2009-07-11 11 views
3

Exemple:Python convertit chaîne en tuple

regular_string = "%s %s" % ("foo", "bar") 

result = {} 
result["somekey"] = regular_string, 

print result["somekey"] 
# ('foo bar',) 

Pourquoi result["somekey"] tuple maintenant liez pas?

Répondre

16

En raison de la virgule à la fin de la ligne.

+2

+1. Les virgules, pas les parenthèses, font des tuples. – RichieHindle

+0

Ah, virgule manquée .. Merci – zinovii

9

Lorsque vous écrivez

result["somekey"] = regular_string, 

Python lit

result["somekey"] = (regular_string,) 

(x,) est la syntaxe pour un tuple avec un seul élément. Les parenthèses sont supposées. Et vous finissez vraiment par mettre un tuple, au lieu d'une chaîne là.

Questions connexes