2

我有一个字符串列表

['aaa','bbb','ccc']

我需要将它们转换成这样的元组列表,

[('aaa',),('bbb',),('ccc',)]

当我尝试将元组函数应用于列表的每个元素时,它会拆分字符串并返回类似的内容

('a','a','a')

有没有办法解决这个问题?

4

3 回答 3

3

使用列表理解,并通过“单项元组创建方法”创建元组,或在此处查看有关此的信息。

lst = ['aaa','bbb','ccc']
tpl_lst = [(i,) for i in lst]

产量:

[('aaa',), ('bbb',), ('ccc',)]
于 2013-02-17T07:48:43.103 回答
2

不要应用元组函数,因为它将字符串作为序列,并将其字符分开。您可以像这样简单地使用List Comprehensiontuple手动构建:

>>> l = ['aaa','bbb','ccc']
>>> [(elem,) for elem in l]
[('aaa',), ('bbb',), ('ccc',)]
于 2013-02-17T07:48:38.613 回答
2
>>> l = ['aaa', 'bbb', 'ccc']
>>> print [(i,) for i in l]
[('aaa',), ('bbb',), ('ccc',)]

您需要做的就是将每个元素放在它自己的一个元组中。

于 2013-02-17T07:48:46.450 回答