如何将"[1,2,3]"字符串转换为列表[1,2,3]?

use*_*977 0 python-2.7

我有类似的字符串"[1,2,3]".现在我正在尝试将此字符串转换为列表.该清单应包含[1,2,3].

有没有办法做到这一点?

slo*_*oth 9

你可以使用ast.literal_val:

ast.literal_eval(node_or_string)

安全地评估表达式节点或包含Python表达式的Unicode或Latin-1编码的字符串.提供的字符串或节点可能只包含以下Python文字结构:字符串,数字,元组,列表,dicts,布尔值和None.

这可以用于安全地评估包含来自不可信来源的Python表达式的字符串,而无需自己解析值.

例:

>>> from ast import literal_eval
>>> literal_eval("[1,2,3]")
[1, 2, 3]
>>>
Run Code Online (Sandbox Code Playgroud)