将一些元素转换为int

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

所以我有:

my_list = [“汽车”、“10”、“20”、“50”、“60”、“13”、“自行车”]

如何制作:

my_list = ["汽车", 10, 20, 50, 60, 13, "自行车"]

回答

一个简单的理解就可以:

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

这使用条件表达式并使用str.isdigit.

str.isdigit检查并假定所有的数字都是非负整数。对于更复杂的数字字符串,例如"-5"or"1.7"您可能必须更加冗长并使用循环,并且可能使用更广泛的类型 ( float) 以符合@Sujay 的解决方案。


以上是将一些元素转换为int的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>