如何将列表中字符串元素转为整数?Python是否有内置函数实现?
解答
当然不用写那种繁琐的循环,Python有两种更简洁的内置方式可以快速把字符串列表转成整数列表:
1. 使用map()函数
map()是Python内置函数,它会把指定的函数(这里是int())应用到可迭代对象的每个元素上,最后用list()把返回的map对象转换成列表:
marks = '95,88,79' # 假设你的字符串是合法数字组成的(原示例里的marks1应该是笔误) marks = list(map(int, marks.split(',')))
2. 使用列表推导式
这是Python中生成列表的常用语法,逻辑和循环完全一致,但写法更紧凑:
marks = '95,88,79' marks = [int(m) for m in marks.split(',')]
这两种方式都比你写的enumerate循环更简洁,而且都是Python原生支持的内置用法,性能也和手动循环差不多(甚至在某些场景下更高效)。
注意:不管用哪种方法,你的字符串元素必须是可以被int()转换的合法数字字符串,否则会抛出ValueError。
内容的提问来源于stack exchange,提问作者Soham
相关产品推荐
相关产品推荐

