Python 3.x でマップからリストを作成する
Python 3.x でリストをマッピングすると、結果は次のように返されます。リストではなくマップ オブジェクト。 Python 2.6 からのこの逸脱は、list() 関数を使用してマップ オブジェクトをリストに変換することで解決できます。
例:
# Python 2.6 result = map(chr, [66, 53, 0, 94]) # returns a list # Python 3.x result = map(chr, [66, 53, 0, 94]) # returns a map object # Convert the map object to a list result = list(result) # ['B', '5', '\x00', '^']
代替解決策:
代わりに、リスト内包表記を使用して直接マップされた値からリストを作成します:
result = [chr(num) for num in [66, 53, 0, 94]] # ['B', '5', '\x00', '^']
説明:
Python 3.x では、イテラブルを操作する多くの関数がイテレータを返します。イテレータはリストに比べてメモリ消費が少なく、要素を 1 回繰り返すシナリオに適しています。イテレータをリストに変換するには、list() 関数または前述のリスト内包表記を使用できます。
以上がPython 3.x マップ オブジェクトをリストに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。