所以我有一个字符串列表,每个字符串都有固有类型。
mixedbag = ['True', '2.7', '3', 'Ninety']
我想把它改成这样:
[True, 2.7, 3, 'Ninety']
我想到的是创建一个大型 try/except 链来评估列表中的每个项目,但这感觉不像是处理此问题的 pythonic 方式。
最佳答案
你可以使用 ast.literal_eval
在 try-except block 中。
from ast import literal_eval
def unmix(ele):
try:
ele = literal_eval(ele)
except ValueError:
pass
return ele
演示
>>> list(map(unmix, mixedbag))
[True, 2.7, 3, 'Ninety']
关于python - 将具有混合固有类型的字符串列表转换为固有类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42011701/