Dalam pengaturcaraan Python, fungsi zip() memainkan peranan penting dalam menggabungkan berbilang senarai ke dalam satu senarai tupel. Setiap tuple mewakili satu baris, menggandingkan elemen yang sepadan daripada senarai input.
Pertimbangkan coretan kod berikut:
x1, x2, x3 = stuff.calculations(withdataa) zipall = zip(x1, x2, x3) print("len of zipall %s" % len(zipall))
Berbeza dengan hasil jangkaan tiga, output ialah 20, menunjukkan asas salah faham.
Apabila anda zip bersama tiga senarai dengan 20 elemen setiap satu, senarai yang terhasil mengandungi 20 tupel. Setiap tuple mengandungi tiga elemen, satu daripada setiap senarai input.
Contohnya:
In [1]: a = b = c = range(20) In [2]: zip(a, b, c) Out[2]: [(0, 0, 0), (1, 1, 1), ... (17, 17, 17), (18, 18, 18), (19, 19, 19)]
Untuk menentukan panjang setiap tuple, anda boleh memeriksa elemen pertama:
In [3]: result = zip(a, b, c) In [4]: len(result[0]) Out[4]: 3
Walau bagaimanapun, pendekatan ini mungkin gagal jika senarai input kosong. Oleh itu, sebaiknya gunakan kaedah yang lebih mantap untuk menentukan bilangan elemen dalam setiap tuple.
Atas ialah kandungan terperinci Mengapakah `zip()` dalam Python Mengembalikan Senarai 20 Tuple Apabila Menggabungkan Tiga Senarai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!