我有一个简单的问题。我想将值列表转换为int
a = ['11', '12', '73']
所以我申请了:
[list(map(int, x) for x in a]
但是,我得到一份清单
[[1, 1], [1, 2], [7, 3]]
为什么?我知道字符串是列表对象,但在这种情况下,字符串有三个元素。我怎样才能做到这一点?
答案 0 :(得分:3)
列表理解是多余的。您要找的是list(map(int, a))
通过在列表推导中使用地图,您正在进行与以下内容相当的列表理解:
[[int(x) for x in y] for y in a]
这将始终生成列表列表。
答案 1 :(得分:1)
试试这个,现在应该没问题了:
list(map(int, a))