将字符串转换为列表Python [string.split表现怪异]

问题描述

用途ast.literal_eval()

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

>>> from ast import literal_eval
>>> temp = "['a','b','c']"
>>> l = literal_eval(temp)
>>> l
['a', 'b', 'c']
>>> type(l)
<type 'list'>

解决方法

temp = "['a','b','c']"
print type(temp)
#string

output = ['a','c']
print type(output)
#list

所以我有这个临时字符串,基本上是字符串格式的列表。。。我正在尝试将其重新列出,但是我不确定这样做的简单方法。我知道一种方法,但我宁愿不使用正则表达式

如果我使用temp.split()我得到

temp_2 = ["['a','c']"]