2009-09-17 90 views
1

我有,我會想提取的內容作爲引用字符串的字符串的元組,即如何從一個元組返回一個帶引號的字符串?

tup=('string1', 'string2', 'string3') 

when i do this 

main_str = ",".join(tup) 

#i get 

main_str = 'string1, string2, string3' 

#I want the main_str to have something like this 

main_str = '"string1", "string2", "string3"' 

迦特

+0

你關心,如果字符串已經在他們報價? – 2009-09-17 16:38:13

回答

9
", ".join('"{0}"'.format(i) for i in tup) 

", ".join('"%s"' % i for i in tup) 
2

嗯,一個答案會成爲:

', '.join([repr(x) for x in tup]) 

repr(tup)[1:-1] 

但是,這不是真的很好。 ;)

更新: 雖然,注意到,您將無法控制結果字符串是否以'「或'」開頭。如果該事項,你需要更加明確的,像這裏其他的答案是:

', '.join(['"%s"' % x for x in tup]) 
+0

錯過關閉角度支架 – gath 2009-09-17 16:27:09

+0

如果tup中的字符串可能含有引號並且您在意(例如,您想要檢索引號中的內容),則應使用repr(x)。 – 2009-09-17 16:39:43

0

下面是做這件事:

>>> t = ('s1', 's2', 's3') 
>>> ", ".join(s.join(['"','"']) for s in t) 
'"s1", "s2", "s3"' 
相關問題