Ich suche nach einer Möglichkeit, Elemente aus einem Tupel ohne Klammern zu drucken
Heres mein Tuple:
mytuple = [(1.0,),(25.34,),(2.4,),(7.4,)]
Ich habe dies in eine Liste umgewandelt, um die Arbeit mit ihm zu erleichtern
mylist == list(mytuple)
dann habe ich folgendes gemacht
for item in mylist:
print item.strip()
aber ich erhalte den folgenden fehler
'Tuple' object has no attribute 'strip'
was ist seltsam, weil ich dachte, ich würde in eine Liste konvertiert?
was ich als Endergebnis erwarte, ist so etwas
1.0,
25.34,
2.4,
7.4
oder
1.0, ,23.43, , 2.4, ,7.4
Vielen Dank
mytuple
ist bereits eine Liste (eine Liste von Tupeln), so dass der Aufruf von list()
nichts bewirkt.
(1.0,)
ist ein Tupel mit einem Element. Sie können keine String-Funktionen (wie Sie es versucht haben) aufrufen. Sie sind für String-Typen.
Um jedes Element in Ihrer Liste von Tupeln zu drucken, führen Sie einfach Folgendes aus:
for item in mytuple:
print str(item[0]) + ','
Oder:
print ', ,'.join([str(i[0]) for i in mytuple])
# 1.0, ,25.34, ,2.4, ,7.4
Sie können es auch so machen:
mytuple = (1,2,3)
print str(mytuple)[1:-1]
mytuple = [(1.0,),(25.34,),(2.4,),(7.4,)]
for item in mytuple:
print(*item) # *==> unpacking
Ich durchlaufe die Liste der Tupel, dann durchlaufe ich die 'Elemente' der Tupel.
my_Tuple_list = [(1.0,),(25.34,),(2.4,),(7.4,)]
for a_Tuple in my_Tuple_list: # iterates through each Tuple
for item in a_Tuple: # iterates through each Tuple items
print item
ergebnis:
1.0
25.34
2.4
7.4
um genau das Ergebnis zu erhalten, das Sie oben erwähnt haben, können Sie immer hinzufügen
print item + ','