Fungsi Produk Sukar - Alternatif Pythonic
Walaupun fungsi sum() Python menyediakan jumlah nombor dalam satu lelaran, nampaknya menjadi kekurangan ketara fungsi analog untuk pendaraban. Difahamkan, pembangun sering mencari fungsi yang melakukan operasi yang serupa tetapi untuk mendarab nilai, serupa dengan sum().
Walau bagaimanapun, walaupun daya tarikan intuitifnya, fungsi terbina dalam sedemikian, seperti product(), tidak tidak wujud dalam perpustakaan standard Python. Dari segi sejarah, pencipta Guido van Rossum memveto idea itu kerana kemungkinan kekeliruan dengan pengendali pendaraban (*).
Walaupun tiada fungsi produk() khusus, terdapat pendekatan alternatif untuk mencapai pengumpulan pendaraban. Satu penyelesaian ialah menggunakan fungsi reduce() bersama-sama dengan modul operator. Berikut ialah contoh:
from functools import reduce import operator product = reduce(operator.mul, (3, 4, 5), 1) # Initialize with 1 for multiplication accumulation # Result: 60
Dalam contoh ini, reduce() menggunakan operator.mul pada elemen jujukan (3, 4, 5) dan mengumpul hasil ke dalam produk berubah. Ambil perhatian bahawa kami memulakan produk dengan 1 untuk mengelakkan bermula dengan 0, yang akan tersalah darab semua elemen kepada 0.
Atas ialah kandungan terperinci Adakah Terdapat Python Setara dengan Fungsi Sum() untuk Pendaraban?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!