Ich habe einige object.ID-s, die ich als Tupel in der Benutzersitzung zu speichern versuche. Wenn ich das erste hinzufüge, funktioniert es, aber das Tupel sieht so aus, (u'2',)
aber wenn ich versuche, ein neues mit mytuple = mytuple + new.id
got error hinzuzufügen can only concatenate tuple (not "unicode") to tuple
.
python
python-2.7
tuples
Goran
quelle
quelle
(a+b)*c
new = a + b
stattdessen tunnew = a + (b,)
. AFAICT funktioniert genauso in Python3 und Python2.7.a += ('z',)
, wie in der folgenden Antwort erwähntSeit Python 3.5 ( PEP 448 ) können Sie das Entpacken innerhalb eines Tupels, eines Listensatzes und eines Diktats durchführen:
quelle
Vom Tupel zur Liste zum Tupel:
Oder mit einer längeren Liste von Elementen zum Anhängen
gibt Ihnen
Der Punkt hier ist: Liste ist ein veränderbarer Sequenztyp. Sie können also eine bestimmte Liste ändern, indem Sie Elemente hinzufügen oder entfernen. Tupel ist ein unveränderlicher Sequenztyp. Sie können ein Tupel nicht ändern. Sie müssen also eine neue erstellen .
quelle
list
Beginn feststellen, dass OP konvertiert werden soll , Elemente anhängen und dann ganz am Ende konvertieren,tuple
ist dies die beste Lösung +1Tupel kann nur das Hinzufügen zulassen
tuple
. Der beste Weg, dies zu tun, ist:Ich habe das gleiche Szenario mit den folgenden Daten versucht, es scheint alles gut zu funktionieren.
quelle
quelle
# 1 Form
# 2 Form
quelle
TypeError: 'int' object is not iterable
Unterm Strich besteht der einfachste Weg, an ein Tupel anzuhängen, darin, das hinzugefügte Element mit Klammern und einem Komma zu versehen.
quelle