Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Fungsi `map` Python Berfungsi dan Bagaimana Ia Berbanding dengan Pemahaman Senarai?

Bagaimanakah Fungsi `map` Python Berfungsi dan Bagaimana Ia Berbanding dengan Pemahaman Senarai?

Barbara Streisand
Lepaskan: 2024-12-23 10:50:16
asal
199 orang telah melayarinya

How Does Python's `map` Function Work, and How Does It Compare to List Comprehensions?

Menyahmistikan Fungsi peta

Dalam Python, fungsi peta ialah alat terbina dalam untuk menggunakan fungsi tertentu pada setiap elemen dalam lelaran tertentu. Ia mengembalikan senarai output fungsi. Fungsi ini memainkan peranan penting dalam mencipta produk Cartesian, iaitu satu set semua pasangan tertib elemen yang mungkin daripada dua set atau lebih.

Pertimbangkan contoh berikut:

content = map(tuple, array)
Salin selepas log masuk

Di sini , fungsi peta mengambil dua parameter:

  • Fungsi (tuple dalam kes ini) yang menukarkan setiap elemen tatasusunan kepada tuple.
  • Suatu lelaran (tatasusunan) yang mengandungi satu siri elemen.

Output operasi peta ini ialah senarai di mana setiap elemen ialah versi tuple bagi elemen yang sepadan dalam tatasusunan asal.

Memasukkan tuple dalam fungsi peta mempengaruhi output dalam yang berikut cara:

  • Apabila fungsi adalah tupel, setiap elemen ditukar kepada tupel.
  • Apabila tupel digunakan sebagai lelaran, ia dianggap sebagai senarai rata seperti (a, b, c).
  • Apabila tuple digunakan sebagai kedua-dua fungsi dan boleh lelar, ia melakukan sejenis operasi "transpose", menghasilkan senarai tupel yang mengandungi elemen sepadan daripada semua iterable.

Tanpa fungsi peta, output hanya akan menjadi rentetan "abc" kerana tatasusunan ialah senarai rata aksara. Walau bagaimanapun, disebabkan oleh fungsi peta, setiap aksara ditukar kepada tuple satu elemen, menghasilkan output ["a", "b", "c"].

Untuk memahami sepenuhnya fungsi peta , mungkin berguna untuk membandingkannya dengan menyenaraikan pemahaman, alternatif popular dalam Python:

map(f, iterable) is equivalent to [f(x) for x in iterable]
Salin selepas log masuk

Kefahaman senarai biasanya dianggap lebih Pythonic dan serba boleh, terutamanya untuk mencipta produk Cartesian:

[(a, b) for a in iterable_a for b in iterable_b]
Salin selepas log masuk

Sintaks ini menjana senarai semua pasangan yang mungkin antara elemen iterable_a dan iterable_b. Ia boleh dipecahkan lagi kepada struktur gelung bersarang yang setara untuk kejelasan:

result = []
for a in iterable_a:
    for b in iterable_b:
        result.append((a, b))
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Fungsi `map` Python Berfungsi dan Bagaimana Ia Berbanding dengan Pemahaman Senarai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan