Python 如何将元素列表转换为其默认类型
例如,我有以下清单:Python 如何将元素列表转换为其默认类型,python,list,Python,List,例如,我有以下清单: old = ['Savannah', '234Today', '4.5678', '23456','0.2342429'] 如何将其转换为包含默认类型元素的列表 致: 新列表将包含默认类型为float、int、long的元素 感谢您的帮助!谢谢您可以使用ast.literal\u eval和一些异常处理: >>> from ast import literal_eval >>> lis = ['Savannah', '234Today
old = ['Savannah', '234Today', '4.5678', '23456','0.2342429']
如何将其转换为包含默认类型元素的列表
致:
新列表将包含默认类型为float、int、long的元素
感谢您的帮助!谢谢您可以使用
ast.literal\u eval
和一些异常处理:
>>> from ast import literal_eval
>>> lis = ['Savannah', '234Today', '4.5678', '23456','0.2342429']
def solve(x):
try:
return literal_eval(x)
except (ValueError, SyntaxError):
return x
...
>>> map(solve, lis)
['Savannah', '234Today', 4.5678, 23456, 0.2342429]
Arg,正在乱搞
literal\u eval
,但无法理解:p+1.
>>> from ast import literal_eval
>>> lis = ['Savannah', '234Today', '4.5678', '23456','0.2342429']
def solve(x):
try:
return literal_eval(x)
except (ValueError, SyntaxError):
return x
...
>>> map(solve, lis)
['Savannah', '234Today', 4.5678, 23456, 0.2342429]