2016-01-02 146 views
1

转换一个字符串转换为字符串

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) 

回答

4

你可以尝试以下方法:

string = letters[0] 
listInDesiredFormat = string.replace('\'', '').split(', ') 

这需要这是列表的第一个元素的字符串,替换所有单引号,然后分裂的逗号,以获得一个字符串列表

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']