首頁 >後端開發 >Python教學 >如何在 Python 3.x 中將映射迭代器轉換為列表?

如何在 Python 3.x 中將映射迭代器轉換為列表?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-19 21:20:10703瀏覽

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

在Python 3.x 中從Map 擷取清單

在Python 2.6 中,使用map 函數將可迭代物件對應到新值回傳了一個列表。但是,在 Python 3.x 中,map 函數傳回一個迭代器,這可以提高記憶體效率。

要在 Python 3.x 中以列表形式檢索映射值,可以使用列表建構子:

my_list = list(map(chr, [66, 53, 0, 94]))

替代方法

或者,還有其他方法將可迭代物件轉換為十六進制值列表:

  • 使用列表理解:
my_list = [hex(i) for i in [66, 53, 0, 94]]
  • 使用生成器表達式的join 函數:
my_list = list("\x" + hex(i)[2:] for i in [66, 53, 0, 94])

效能注意事項

通常,使用列表理解比使用帶有映射物件的循環更有效。但是,如果您需要多次迭代這些值,使用映射物件可以節省內存,因為它會延遲生成值。

以上是如何在 Python 3.x 中將映射迭代器轉換為列表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn