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]

両方ではありません。

mapiterable 内のすべてのアイテムに関数を単独で適用します。これがその目的です。

同様に、リスト内包表記はイテラブル内のすべての項目で式を実行するため、map毎回実行する式だけが必要です。

于 2012-04-17T21:59:38.247 に答える