Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Fungsi `enumerate()` Python Berfungsi dan Bagaimana Ia Boleh Disesuaikan?

Bagaimanakah Fungsi `enumerate()` Python Berfungsi dan Bagaimana Ia Boleh Disesuaikan?

Barbara Streisand
Barbara Streisandasal
2024-12-07 22:22:14521semak imbas

How Does Python's `enumerate()` Function Work and How Can It Be Customized?

Memahami Enumerate dalam Python

Fungsi enumerate() Python meningkatkan satu lelaran dengan menambahkan pembilang angka pada setiap elemen . Mari kita terokai maksudnya dalam konteks khusus yang diberikan:

for row_number, row in enumerate(cursor):

Kursor di sini ialah lelaran yang mengandungi jujukan unsur. Untuk setiap elemen, enumerate() menjana tuple dengan pembilang (row_number) dan elemen itu sendiri (row). Gelung untuk kemudian memperuntukkan tupel ini kepada pembolehubah nombor_baris dan baris, masing-masing.

Apa yang Sebenarnya Berfungsi Enumerate

Ringkasnya, enumerate() menambah kiraan larian pada elemen yang boleh diulang. Dalam kod yang diberikan, ia memulakan kiraan dari 0 dan menambahnya sebanyak 1 untuk setiap elemen berikutnya. Ini membolehkan anda mengulangi yang boleh diulang dan mempunyai akses kepada kedua-dua kiraan dan elemen secara serentak.

Demonstrasi

Pertimbangkan contoh berikut:

elements = ('foo', 'bar', 'baz')

for elem in elements:
    print(elem)

Output:

foo
bar
baz

Sekarang, mari kita ambil kerja enumerate():

for count, elem in enumerate(elements):
    print(count, elem)

Output:

0 foo
1 bar
2 baz

Dalam kes ini, kita mendapat kedua-dua indeks (kiraan) dan elemen yang sepadan (elem).

Penyesuaian dan Pelaksanaan

Oleh lalai, enumerate() mula mengira dari 0. Walau bagaimanapun, anda boleh memberikan argumen kedua pilihan untuk bermula dari nombor yang berbeza. Contohnya:

for count, elem in enumerate(elements, 42):
    print(count, elem)

Output:

42 foo
43 bar
44 baz

Anda juga boleh mencipta versi enumerate() anda sendiri menggunakan binaan Python asli atau perpustakaan pihak ketiga. Contohnya:

def enumerate(it, start=0):
    return zip(count(start), it)  # Using itertools.count()

Atau:

def enumerate(it, start=0):
    count = start
    for elem in it:
        yield count, elem
        count += 1

Pelaksanaan tersuai ini menunjukkan fleksibiliti paradigma pengaturcaraan Python.

Atas ialah kandungan terperinci Bagaimanakah Fungsi `enumerate()` Python Berfungsi dan Bagaimana Ia Boleh Disesuaikan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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