最简单的方法是将string类似以下的列表转换为list:
string
list
x = u'[ "A","B","C" , " D"]'
即使用户在逗号之间加空格,也要在引号内加空格。我还需要处理以下内容:
x = ["A", "B", "C", "D"]
在Python中。
我可以使用strip()并split()使用split运算符删除空格,并检查非字母。但是代码变得非常混乱。有快点 方法吗?
strip()
split()
>>> import ast >>> x = u'[ "A","B","C" , " D"]' >>> x = ast.literal_eval(x) >>> x ['A', 'B', 'C', ' D'] >>> x = [n.strip() for n in x] >>> x ['A', 'B', 'C', 'D'] ast.literal_eval:
使用ast.literal_eval,你可以安全地评估表达式节点或包含Python表达式的字符串。提供的字符串或节点只能由以下Python文字结构组成:字符串,数字,元组,列表,字典,布尔值和无。
ast.literal_eval