Inh*_*eek 1 python string tuples list
如何将元组列表转换为字符串.请看下面的案例
给定格式:
[(a,b),(c,d)]
Run Code Online (Sandbox Code Playgroud)
我得到了什么:
码:
[i for sub in tagged_in for i in sub]
tagged_in = [(a,b),(c,d)]
#Result = 'a,b,c,d'
Run Code Online (Sandbox Code Playgroud)
必填格式:
'a-b,c-d'
Run Code Online (Sandbox Code Playgroud)
有人可以更新我的代码以获得所需的格式
小智 6
您可以简单地使用str.join字符串对象的方法:
>>> v = [("a","b"),("c","d")]
>>> ",".join(map("-".join,v))
'a-b,c-d'
Run Code Online (Sandbox Code Playgroud)
编辑:正如@MSeifert使用list-comprehension所指出的那样:
>>> v= [("a","b"),("c","d")]
>>> ",".join(["-".join(tup) for tup in v])
'a-b,c-d'
Run Code Online (Sandbox Code Playgroud)
虽然生成器通常是更好的选择,但有一些python函数(如str.join和sorted)可以更好地处理列表.如果性能是一个问题,那么在这种情况下最好使用list-comprehension:
>>> 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]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2171 次 |
| 最近记录: |