python-将列表的字符串表示形式转换为列表

最简单的方法是将string类似以下的列表转换为list

x = u'[ "A","B","C" , " D"]'

即使用户在逗号之间加空格,也要在引号内加空格。我还需要处理以下内容:

x = ["A", "B", "C", "D"] 

在Python中。

我可以使用strip()split()使用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文字结构组成:字符串,数字,元组,列表,字典,布尔值和无。

以上是 python-将列表的字符串表示形式转换为列表 的全部内容, 来源链接: utcz.com/qa/420432.html

回到顶部