Wie zum verketten von Tupeln
Habe ich diesen code:
def make_service(service_data, service_code):
routes = ()
curr_route = ()
direct = ()
first = service_data[0]
curr_dir = str(first[1])
for entry in service_data:
direction = str(entry[1])
stop = entry[3]
if direction == curr_dir:
curr_route = curr_route + (stop, )
print((curr_route))
Wenn ich print((curr_route)), es gibt mir dieses Ergebnis:
('43009',)
('43189', '43619')
('42319', '28109')
('42319', '28109', '28189')
('03239', '03211')
('E0599', '03531')
Wie mache ich es ein Tupel? also
('43009','43189', '43619', '42319', '28109', '42319', '28109', '28189', '03239', '03211', 'E0599', '03531')
- Das folgende Beispiel funktioniert bei mir , Ist es möglich, Sie verändert
curr_route
vorif
Abschnitt? - Ich kann underestand es im Kommentar , bitte fügen Sie ihn in Frage!
- aktualisieren Sie Ihre Frage mit dem vollständigen code
- Keine
else
oderelif
existiert nachif
? - Welche version von python benutzt du?
- Python 3.5.1 ich glaube nicht, dass der rest des Codes Fragen, ich denke, es ist wirklich einfach, weil, wie die Daten angeordnet werden, und ich bin versucht zu umgehen, dass.
- sorry, aber
print((curr_route))
geben können, das Ergebnis, die Sie Liste. Bereiten Sie bitte eine MVCE zu Ihrem Problem und zeigen uns in der Frage.
Du musst angemeldet sein, um einen Kommentar abzugeben.
gibt
('hello', 'these', 'are', 'my', 'tuples!')
in meiner version von Python (2.7.12). Die Wahrheit ist, fand ich Ihre Frage, während Sie versuchen zu finden wie das funktioniert, aber ich hoffe, es ist nützlich für Sie!import itertools as it: tuple(it.chain.from_iterable(tuples))
for i in it.chain.from_iterable(tuples): print(i)
Tupel existieren, die unveränderlich sind. Wenn Sie anfügen möchten-Elemente in einer Schleife, erstellen Sie eine leere Liste
curr_route = []
, daran anfügen, und konvertieren sobald die Liste gefüllt ist:Beachten Sie, dass die
print
außerhalb der for-Schleife kann man einfach das, was Sie Fragen, denn da druckt es eine einzelne lange Tupel.