1

可能重复:
Python:如何将字符串数组转换为数字数组?

我正在尝试将字符串列表映射到 Int,当我映射 Int 函数时,它将 2 位数字拆分为 2 个项目列表:

我有以下代码:

>>> MyList
['10', '5', '6', '7', '8', '9']
>>> MyList = [map(int,x) for x in MyList]
>>> MyList
[[1, 0], [5], [6], [7], [8], [9]]

获取如下列表的正确方法是什么:

[10, 5, 6, 7, 8, 9]
4

1 回答 1

9

直接使用map(int, ...就行了:

map(int, MyList)

或者,在大多数情况下,使用列表推导:

[int(x) for x in MyList]

但不是两者兼而有之。

map将函数单独应用于迭代中的每个项目——这就是它的目的。

类似地,列表推导在可迭代的每个项目上运行表达式,因此您不需要map,只需每次要运行的表达式。

于 2012-04-17T21:59:38.247 回答