अपडेट करें:
पायथन 3.8 में, गणित मॉड्यूल में उत्पादों को जोड़ा गया । देखें: math.prod () ।
पुरानी जानकारी: पायथन 3.7 और पूर्व
जिस कार्य के लिए आप देख रहे हैं, उसे ठेस () या उत्पाद () कहा जाएगा, लेकिन पायथन में वह कार्य नहीं है। तो, आपको अपना खुद का लिखना होगा (जो आसान है)।
ठेस पर उच्चारण ()
हाँ य़ह सही हैं। गुइडो ने इस विचार को खारिज कर दिया एक अंतर्निहित ठेस () फ़ंक्शन के लिए को क्योंकि उन्होंने सोचा था कि इसकी शायद ही कभी आवश्यकता थी।
कम के साथ वैकल्पिक ()
जैसा कि आपने सुझाव दिया है, कम करना () और ऑपरेटर.मूल () का उपयोग करके अपना खुद का बनाना मुश्किल नहीं है :
from functools import reduce # Required in Python 3
def prod(iterable):
return reduce(operator.mul, iterable, 1)
>>> prod(range(1, 5))
24
ध्यान दें, पायथन 3 में, कम () फ़ंक्शन को फंक्शनल टूल में ले जाया गया था ।
विशिष्ट मामला: तथ्य
एक साइड नोट के रूप में, ठेस के लिए प्राथमिक प्रेरक उपयोग का मामला () फैक्टोरियल की गणना करना है। गणित मॉड्यूल में इसके लिए हमारे पास पहले से ही समर्थन है :
>>> import math
>>> math.factorial(10)
3628800
लघुगणक के साथ वैकल्पिक
यदि आपके डेटा में फ़्लोट्स हैं, तो आप expors और logarithms के साथ sum () का उपयोग करके किसी उत्पाद की गणना कर सकते हैं :
>>> from math import log, exp
>>> data = [1.2, 1.5, 2.5, 0.9, 14.2, 3.8]
>>> exp(sum(map(log, data)))
218.53799999999993
>>> 1.2 * 1.5 * 2.5 * 0.9 * 14.2 * 3.8
218.53799999999998
ध्यान दें, लॉग () के उपयोग के लिए आवश्यक है कि सभी इनपुट सकारात्मक हों।