所以我有这个列表如下:
['One', 'Two', 'Three', 'Four']
['Five', 'Six', 'Seven']
所以,包含2个元素的列表(上面的每一行都是列表中的特定元素),lst = [['One', 'Two', 'Three', 'Four'], ['Five', 'Six', 'Seven']]
我的问题是如何将上面的每个单词作为字符串提取,以获得两个字符串数组,如
'One', 'Two', 'Three', 'Four'
'Five', 'Six', 'Seven'
到现在为止,我想把它全部转换为字符串,然后拆分它。这是我的代码:
a = str(list)
c = a.translate(None, '[]\'\'') #to remove the ' ' and [ ]
c.split() #split here doesn't seem to be doing anything
print c
结果是一个大字符串“一,二,三,四,五,六,七”
它应该是非常简单的东西,但对于prog来说是新的,似乎无法找到它的角度。有没有人有任何想法?
答案 0 :(得分:1)
编辑1
我认为你有一个列表列表,并且正在尝试加入内部列表。如果是这种情况,请尝试:
>>> l = [['One', 'Two', 'Three', 'Four'], ['Five', 'Six', 'Seven']]
>>> [', '.join(x) for x in l]
['One, Two, Three, Four', 'Five, Six, Seven']
如果您想要访问列表中的单个元素,例如"Six"
,您可以使用相应的索引访问它。详细了解them on the docs。
>>> l[1][1]
'Six'
原始答案
我认为你正在寻找str.join方法
>>> ', '.join(['One', 'Two', 'Three', 'Four'])
'One, Two, Three, Four'
>>> ', '.join(['Five', 'Six', 'Seven'])
'Five, Six, Seven'
答案 1 :(得分:1)
斯普利特没有做任何事情,因为你没有做任何事情。您需要"c ="
才能将拆分结果实际分配给变量。
答案 2 :(得分:0)
像这样使用itertools。基本上,链函数将嵌套列表解压缩到一个迭代器中,然后可以使用标准字符串方法连接它。
your_list = [['One', 'Two', 'Three', 'Four'], ['Five', 'Six', 'Seven']]
import itertools
string = ", ".join(itertools.chain.from_iterable(your_list))
print string