将某些元素转换为int

2024-05-17 15:34:15 发布

您现在位置:Python中文网/ 问答频道 /正文

在python中,我想将列表中的一些字符串元素转换为int

因此,我:

我的清单=[“汽车”、“10”、“20”、“50”、“60”、“13”、“自行车”]

如何制作:

我的清单=[“汽车”,10,20,50,60,13,“自行车”]


Tags: 字符串元素列表自行车汽车int
2条回答

一个简单的comprehension可以:

my_list = [int(x) if x.isdigit() else x for x in my_list]

这将使用conditional expression并使用^{}进行测试

str.isdigit检查假定所有数字都是非负整数。对于更复杂的数值字符串,如"-5""1.7",您可能需要更加详细,并根据@Sujay的解决方案使用循环和可能更广泛的类型(float

for i, j in enumerate (my_list):
    try:
         my_list[i]=int(j)
    except ValueError:
          pass

相关问题 更多 >