Dans le code suivant:tuples en python Expanding
a = 'a'
tup = ('tu', 'p')
b = 'b'
print 'a: %s, t[0]: %s, t[1]: %s, b:%s'%(a, tup[0], tup[1], b)
Comment puis-je « développer » (ne peut pas trouver un meilleur verbe) tup
pour que je n'ai pas de lister explicitement tous ses éléments?
NOTE Que je ne veux pas imprimer tup
en soi, mais ses éléments individuels. En d'autres termes, le code suivant est pas ce que je cherche
>>> print 'a: %s, tup: %s, b: %s' % (a, tup, b)
a: a, tup: ('tu', 'p'), b: b
Le code ci-dessus imprimé tup
, mais je veux l'imprimer est des éléments indépendamment, avec un texte entre les éléments.
Ce qui suit ne fonctionne pas:
print 'a: %s, t[0]: %s, t[1]: %s, b:%s'%(a, tup, b)
In [114]: print '%s, %s, %s, %s'%(a, tup, b)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
TypeError: not enough arguments for format string
Dans Ruby on l'appelle splatting; vous trouverez plus d'informations sur http://stackoverflow.com/questions/1141504/name-this-python-ruby-language-construct-using-array-values-to-satisfy-function, mais je ne pense pas que ce soit applicable dans votre cas particulier. –