Molte risposte fornite sopra erano corrette. Il modo giusto per farlo è:
>>> thetuple = (1, 2, 3)
>>> print "this is a tuple: %s" % (thetuple,)
this is a tuple: (1, 2, 3)
Tuttavia, c'è stata una disputa se l'operatore '%'
String è obsoleto. Come molti hanno sottolineato, non è sicuramente obsoleto, in quanto l'operatore di stringa '%'
è più facile da combinare un'istruzione String con un elenco di dati.
Esempio:
>>> tup = (1,2,3)
>>> print "First: %d, Second: %d, Third: %d" % tup
First: 1, Second: 2, Third: 3
Tuttavia, usando la funzione .format()
, si finirà con una dichiarazione prolisso.
Esempio:
>>> tup = (1,2,3)
>>> print "First: %d, Second: %d, Third: %d" % tup
>>> print 'First: {}, Second: {}, Third: {}'.format(1,2,3)
>>> print 'First: {0[0]}, Second: {0[1]}, Third: {0[2]}'.format(tup)
First: 1, Second: 2, Third: 3
First: 1, Second: 2, Third: 3
First: 1, Second: 2, Third: 3
ulteriormente più, '%'
stringa operatore inoltre utile di validare il tipo di dati quali %s
, %d
, %i
, mentre .format() only support two conversion flags: '!s'
e '!r'
.
Penso che questo sia più elegante (e leggibile) che una tupla avvolgente. –
Sono sorpreso che questa risposta non abbia ottenuto più attenzione – Chris