如何转换以下列表
['abc,cde,eg,ba', 'abc,cde,ba']
进入元组列表?
[('abc','cde','eg','ba'), ('abc','cde','ba')]
我尝试了什么
output = []
for item in my_list:
a = "','".join((item.split(',')))
output.append(a)
答案 0 :(得分:2)
在你的循环中,你正在拆分字符串(它会给你一个列表),但是然后你用一个,
加入它,它将返回给你相同的字符串:
>>> 'a,b'.split(',')
['a', 'b']
>>> ','.join('a,b'.split(','))
'a,b'
您可以将列表传递给内置的tuple()
方法,从而将列表转换为元组。
将上述内容与列表推导(一种评估为列表的表达式)相结合,可以为您提供所需的内容:
>>> [tuple(i.split(',')) for i in ['abc,cde,eg,ba', 'abc,cde,ba']]
[('abc', 'cde', 'eg', 'ba'), ('abc', 'cde', 'ba')]
写作的简单方法是:
result = []
for i in ['abc,cde,eg,ba', 'abc,cde,ba']:
result.append(tuple(i.split(',')))
print(result)
答案 1 :(得分:2)
t=['abc,cde,eg,ba', 'abc,cde,ba']
for i in t:
print tuple(i.split(','))
答案 2 :(得分:1)
你可以拆分2个元素。这是我的代码
['abc,cde,eg,ba', 'abc,cde,ba']
a='abc,cde,eg,ba'
b='abc,cde,ba'
c=[]
c.append(tuple(a.split(',')))
c.append(tuple(b.split(',')))
print c