2024-04-23 16:59:44 发布
网友
如果我有以下清单:
lst = ['3', '7', 'foo', '2.6', 'bar', '8.9']
如何将所有可能的项相应地转换为int或float,以获得
lst = [3, 7, 'foo', 2.6, 'bar', 8.9]
提前谢谢。你知道吗
尝试以下操作:
lst = ['3', '7', 'foo', '2.6', 'bar', '8.9'] for j,i in enumerate(lst): if i.isdigit(): lst[j]=int(i) elif '.' in i: lst[j]=float(i)
输出:
[3, 7, 'foo', 2.6, 'bar', 8.9]
循环每个项目并尝试转换。如果转换失败,那么你知道它是不可转换的。你知道吗
def tryconvert(s): try: return int(s) except ValueError: try: return float(s) except ValueError: return s lst = ['3', '7', 'foo', '2.6', 'bar', '8.9'] newlst = [tryconvert(i) for i in lst] print(newlst)
尝试以下操作:
输出:
循环每个项目并尝试转换。如果转换失败,那么你知道它是不可转换的。你知道吗
输出:
相关问题 更多 >
编程相关推荐