2009-03-23 2 views
1

Ich habe eine Liste voller Informationen, die ich an mehrere Zeichenfolgen für die Aufnahme über die neue Methode format übergeben möchte. Als Spielzeug Beispiel, lassen Sie unsWie können Sie in Python 2.6 ein Listenobjekt an eine Methode übergeben, die eine Liste von Argumenten erwartet?

thelist = ['a', 'b', 'c']

definieren würde ich eine print-Anweisung wie print '{0} {2}'.format(thelist) und print '{1} {2}'.format(thelist)

tun, wenn ich dies ausführen, erhalte ich die Meldung IndexError: tuple index out of range; wenn man herumfummelt, nimmt es die ganze Liste eindeutig als ein einzelnes Objekt auf. Ich würde natürlich lieber thelist zu 'a', 'b', 'c' übersetzen.

Ich habe versucht, mit einem Tupel und erhielt den gleichen Fehler.

Wie heißt diese spezielle Technik? Wenn ich den Namen wüsste, hätte ich danach suchen können. "Expandieren" ist es eindeutig nicht. "Explode" liefert nichts Nützliches.

Meine tatsächliche Verwendung ist viel länger und mühsamer als das Spielzeug Beispiel.

Antwort

10

.format(*thelist)

Es ist Teil der Aufrufsyntax in Python ist. Ich kenne den Namen auch nicht, und ich bin nicht überzeugt, dass er einen hat. Siehe die.

Es funktioniert nicht nur auf Listen, obwohl es für jedes iterierbare Objekt funktioniert.

+0

+1: Zitieren Sie die Dokumentation. –

+0

Ich wusste, dass dir das gefallen würde. :) –

+0

Ich denke, es wird als "Auspacken" bezeichnet. – regan

Verwandte Themen