如何将列表中的字符串数字转换为整数?

12 投票
4 回答
3618 浏览
提问于 2025-04-15 11:23

我有一个列表,比如:

['batting average', '306', 'ERA', '1710']

我该如何在不改变字符串的情况下,转换里面的数字呢?

谢谢你的帮助。

4 个回答

5

试试这个:

def convert( someList ):
    for item in someList:
        try:
            yield int(item)
        except ValueError:
            yield item

newList= list( convert( oldList ) )
5

这些数据看起来你应该知道数字应该放在哪些位置。在这种情况下,直接把这些特定位置的数据转换成你想要的格式,可能会比随便转换任何看起来像数字的东西要好。

ls = ['batting average', '306', 'ERA', '1710']
ls[1] = int(ls[1])
ls[3] = int(ls[3])
41

当然可以!请看下面的内容:

在编程中,我们经常会遇到一些问题,尤其是在使用某些工具或库的时候。有时候,代码运行得不如我们预期,可能会出现错误或者不符合我们的想法。这时候,我们就需要去查找解决方案,通常可以在一些技术论坛,比如StackOverflow,找到别人遇到类似问题时的解决办法。

在这些论坛上,用户会描述他们遇到的具体问题,提供相关的代码示例,并且会询问其他人是否有解决的办法。其他用户则会根据自己的经验,给出建议或者解决方案。

如果你在编程的过程中遇到困难,不妨去这些论坛看看,可能会找到你需要的答案,或者得到一些启发。

changed_list = [int(f) if f.isdigit() else f for f in original_list]

撰写回答