Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Adakah Terdapat Python Setara dengan Fungsi Sum() untuk Pendaraban?

Adakah Terdapat Python Setara dengan Fungsi Sum() untuk Pendaraban?

DDD
DDDasal
2024-10-23 06:02:01732semak imbas

Is There a Python Equivalent to the Sum() Function for Multiplication?

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!

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