2012-03-01 18 views
9

powiedzmy, że mam ciąg:Python: Konwersja z Tuple na String?

s = "Tuple: " 

i Tuple (przechowywany w zmiennej o nazwie TUP):

(2, a, 5) 

Próbuję dostać mój ciąg zawierają wartość „Tuple: (2, a, 5) ". Zauważyłem, że nie można ich po prostu połączyć. Czy ktoś wie najprostszy sposób to zrobić? Dzięki.

Odpowiedz

27

Działa to również:

>>> s = "Tuple: " + str(tup) 
>>> s 
"Tuple: (2, 'a', 5)" 
+0

Tak, to zdecydowanie najprostszy sposób! –

7
>>> tup = (2, "a", 5) 
>>> s = "Tuple: {}".format(tup) 
>>> s 
"Tuple: (2, 'a', 5)" 
+2

Dlaczego {} muszą być w środku? –

+0

Na przykład, co jeśli chciałbym, żeby to było "Tuple (2, a, 5)" zamiast "Tuple: (2, a, 5)" z dwukropkiem? –

+2

@JacobGriffin, użyj ciągu formatów -> http://docs.python.org/library/stdtypes.html#str.format, wypróbuj kod – Fred

10

Spróbuj dołączyć do krotki. Musimy użyć mapy (str, tup), ponieważ niektóre z twoich wartości są liczbami całkowitymi, a join tylko akceptuje łańcuchy.

s += "(" + ', '.join(map(str,tup)) + ")"