হালনাগাদ:
পাইথন ৩.৮-এ, গণিত মডিউলটিতে প্রোড ফাংশনটি যুক্ত করা হয়েছিল । দেখুন: গণিত.প্রড () ।
পুরানো তথ্য: পাইথন ৩.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
লগারিদম সহ বিকল্প
যদি আপনার ডেটাতে ভাসমান থাকে তবে আপনি এক্সটেনশন এবং লগারিদমের সাথে যোগফল () ব্যবহার করে একটি পণ্য গণনা করতে পারেন :
>>> 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
দ্রষ্টব্য, লগ () এর ব্যবহারের জন্য সমস্ত ইনপুটগুলি ইতিবাচক হওয়া দরকার।