如何将列表转换为字符串忽略python中的其他字符?

时间:2017-02-06 10:51:16

标签: python

我有一个像["['a', 'b', 'c', 'd']", '109']这样的列表,列表中有数组,数字。 如何将其转换为字符串"abcd"? 我做了out = ' '.join(row),删除了逗号。我是Python的新手。

4 个答案:

答案 0 :(得分:2)

列表中的第一个元素是列表的字符串表示,而不是列表。要使它成为一个列表,您可以像这样评估它:

from ast import literal_eval

l = ["['a', 'b', 'c', 'd']", '109']
print ''.join(literal_eval(l[0]))

输出:

abcd

答案 1 :(得分:2)

您可以使用ast.literal_eval。但是,您最初不应该将数据转换为此格式,因此我建议您回过头来解决根本问题。

>>> import ast
>>> ''.join(ast.literal_eval("['a', 'b', 'c', 'd']"))
'abcd'

答案 2 :(得分:1)

这样做的好方法是使用re模块。

import re
out = ''

for character in list:
    if re.search('[A-Za-z]', character):
        out += character

答案 3 :(得分:1)

让我们说temp = [["a","b","c","d"], 109] 所以在python shell运行代码中打击:

str = temp [0] //将数组[“a”,“b”,“c”,“d”]分配给str

''.join(str) //在输出

中为您提供abcd字符串

不要忘记这个命令应该在python shell上运行!