我有
letters = ["'FD', 'DD', 'CB', 'AA', 'CB', 'BA', 'BB', 'FD', 'CC', 'CB', 'BA', 'DC', 'CB', 'CC', 'FD', 'CC', 'CB', 'FF'"]
我想分开第一个和最后一个" "并创建此列表
letters = ['FD', 'DD', 'CB', 'AA', 'CB', 'BA', 'BB', 'FD', 'CC', 'CB', 'BA', 'DC', 'CB', 'CC', 'FD', 'CC', 'CB', 'FF']
这是我的尝试,不幸的是,似乎又给了我同样的名单:
a=["'FD', 'DD', 'CB', 'AA', 'CB', 'BA', 'BB', 'FD', 'CC', 'CB', 'BA', 'DC', 'CB', 'CC', 'FD', 'CC', 'CB', 'FF'"]
a="".join(a)
a=a.replace('"'," " )
print a
n=[]
n.append(a)
答案 0 :(得分:4)
您可以尝试以下方法:
string = letters[0]
listInDesiredFormat = string.replace('\'', '').split(', ')
这将获取列表中第一个元素的字符串,替换所有单引号,然后在逗号上拆分以获取字符串列表
答案 1 :(得分:3)
首先,对于letters
,您没有字符串,但只包含一个元素的列表(恰好是一个字符串)。您可以使用letters[0]
访问内部字符串。
我建议使用ast.literal_eval
,它(基本上)是eval
的安全版本。
>>> from ast import literal_eval
>>> list(literal_eval(letters[0]))
['FD', 'DD', 'CB', 'AA', 'CB', 'BA', 'BB', 'FD', 'CC', 'CB', 'BA', 'DC', 'CB', 'CC', 'FD', 'CC', 'CB', 'FF']