ホームページ >バックエンド開発 >Python チュートリアル >Python 3.x マップ オブジェクトをリストに変換するにはどうすればよいですか?

Python 3.x マップ オブジェクトをリストに変換するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-08 11:04:131034ブラウズ

How Do I Convert a Python 3.x Map Object to a List?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。