2010-11-28 21 views

Antwort

7
>>> list=[1,2,3,4,5] 
>>> k = [str(x) for x in list] 
>>> k 
['1', '2', '3', '4', '5'] 
>>> "".join(k) 
'12345' 
>>> ["".join(k)] 
['12345'] 
>>> 
>>> [int("".join(k))] 
[12345] 
>>> 
2
a = [1,2,3,4,5] 
result = [int("".join(str(x) for x in a))] 
15
reduce(lambda x,y:10*x+y, [1,2,3,4,5]) 
# returns 12345 
+1

+1 für die Verwendung von Lambda – Liam

3
list=[int("".join(map(str,list)))] 
0
[int(reduce(lambda x,y: str(x) + str(y),range(1,6)))] 
9

Dies ist wahrscheinlich besser:

"%s" * len(L) % tuple(L) 

, die handhaben kann:

>>> L=[1, 2, 3, '456', '7', 8] 
>>> "%s"*len(L) % tuple(L) 
'12345678' 
+0

Kluge Verwendung der String-Multiplikation. – kindall

1

Ist das wirklich was du mit "merge the list" meinst? Sie verstehen, dass eine Python-Liste andere Dinge als Zahlen enthalten kann, oder? Du verstehst, dass Python stark typisiert ist, und es dir nicht erlaubt, Strings zu Zahlen hinzuzufügen oder umgekehrt, oder? Was sollte das Ergebnis davon sein, die Liste [1, 2, "hi mom"] "zusammenzuführen"?

Verwandte Themen