[Python-de] Unpacking Argument Lists

Alexander 'boesi' Bösecke boesi.josi at gmx.net
Die Nov 16 21:19:32 CET 2004


moin

Bitte verzeiht das englische Topic, ich beziehe mich da auf die
Doku. Ich hab den Eindruck, dass dieses Auspacken von Argumentlisten nur
sehr selektiv funktioniert.

Das Folgende funktioniert wie im Beispiel aus der Doku:
>>> tupel = (2,5)
>>> range(*tupel)
Wenn ich dann aber folgendes mache, bekomm ich einen SyntaxError an der
Stelle des *:
>>> '%s %s %s' %(1, *tupel)

Ich koennte zwar folgendes machen, aber das find ich nicht sonderlich
elegant:
>>> '%s %s %s' % ((1,) + tupel)

Hintergrund der ganzen Geschichte:
Ich hab eine Reihe von Variablen in einem Tupel gesammelt und will diese
zusammen mit anderen Variablen zu einem Ausgabestring verknuepfen. 

Kurz: Warum funktioniert das eine und warum ist das andere ein
SyntaxError? Ich kann keinen wesentlichen Unterschied erkennen.

thx & cu boesi
-- 
--==SECURITY ALERT==--                               #1671 : icq-intern
Your Computer Is Currently Broadcasting An       #73628288 : icq-extern
Internet IP Address. With This Address,           boesi111 : aim
Someone Can Begin Attacking Your Computer.            i171 : reallife