Skip to main content
 首页 » 编程设计

python之如何将元组列表转换为字符串

2025年05月04日24虾米哥

如何将元组列表转换为字符串。 请看下面的案例

给定格式:

[(a,b),(c,d)] 

我得到的:

代码:

[i for sub in tagged_in for i in sub] 
tagged_in = [(a,b),(c,d)] 
#Result = 'a,b,c,d' 

要求的格式:

'a-b,c-d' 

有人可以更新我的代码以获得所需的格式吗

请您参考如下方法:

您可以简单地使用 str.join字符串对象的方法:

>>> v = [("a","b"),("c","d")] 
>>> ",".join(map("-".join,v)) 
'a-b,c-d' 

编辑:正如@MSeifert 所指出的,使用列表理解也是可能的:

>>> v= [("a","b"),("c","d")] 
>>> ",".join(["-".join(tup) for tup in v]) 
'a-b,c-d' 

虽然生成器通常是更好的选择,但有些 python 函数(如 str.join 和 sorted)更适合列表。如果性能是一个问题,那么在这种情况下最好使用列表理解:

>>> setup = 'v = [("a","b"),("c","d")]' 
>>> repeat('",".join(map("-".join,v))',setup=setup) 
[1.0896376324927814, 1.094142565225468, 1.0857250774588465] 
>>> repeat('",".join(["-".join(tup) for tup in v])',setup=setup) 
[0.8851533486462131, 0.8982919691165989, 0.9031148129180337]