2024-07-08 08:26:33 发布
网友
给定一个python字符串列表,如何自动将它们转换为正确的类型?意思是,如果我有:
["hello", "3", "3.64", "-1"]
我想把这个转换成单子
其中第一个元素是stirng,第二个元素是int,第三个元素是float,第四个元素是int
我该怎么做?谢谢。在
import ast L = ["hello", "3", "3.64", "-1"] def tryeval(val): try: val = ast.literal_eval(val) except ValueError: pass return val print [tryeval(x) for x in L]
def tryEval(s): try: return eval(s, {}, {}) except: return s map(tryEval, ["hello", "3", "3.64", "-1"])
只有当您信任输入时才执行此操作。另外,请注意,它支持的不仅仅是文字;还将计算算术表达式。在
不使用评估:
def convert(val): constructors = [int, float, str] for c in constructors: try: return c(val) except ValueError: pass
只有当您信任输入时才执行此操作。另外,请注意,它支持的不仅仅是文字;还将计算算术表达式。在
不使用评估:
相关问题 更多 >
编程相关推荐