列表列表,将所有字符串转换为 int,Python 3
问题描述
我正在尝试将大列表中小列表的所有元素转换为整数,所以它应该如下所示:
I am trying to convert all elements of the small lists in the big list to integers, so it should look like this:
current list:
list = [['1','2','3'],['8','6','8'],['2','9','3'],['2','5','7'],['5','4','1'],['0','8','7']]
for e in list:
for i in e:
i = int(i)
new list:
list = [[1,2,3],[8,6,8],[2,9,3],[2,5,7],[5,4,1],[0,8,7]]
谁能告诉我为什么这不起作用并向我展示一种有效的方法?谢谢!
Could anyone tell me why doesn't this work and show me a method that does work? Thanks!
解决方案
你可以使用嵌套列表推导:
You can use a nested list comprehension:
converted = [[int(num) for num in sub] for sub in lst]
我也将list
重命名为lst
,因为list
是列表类型的名称,不推荐用于变量名.
I also renamed list
to lst
, because list
is the name of the list type and not recommended to use for variable names.
相关文章