Rut*_*uth 5 python string list
我有这样的字符串 "['first', 'sec', 'third']"
将此转换为字符串列表的最佳方法是什么. ['first', 'sec', 'third']
ale*_*cxe 10
我用literal_eval(),它是安全的:
安全地评估表达式节点或包含Python表达式的字符串.提供的字符串或节点可能只包含以下Python文字结构:字符串,数字,元组,列表,dicts,布尔值和None.
这可以用于安全地评估包含来自不可信来源的Python表达式的字符串,而无需自己解析值.
>>> import ast
>>> ast.literal_eval("['first', 'sec', 'third']")
['first', 'sec', 'third']
Run Code Online (Sandbox Code Playgroud)
除了文字表达式之外,它不会评估任何内容:
>>> ast.literal_eval('"hello".upper()')
...
ValueError: malformed string
>>> ast.literal_eval('"hello"+" world"')
...
ValueError: malformed string
Run Code Online (Sandbox Code Playgroud)