Reduce() और lambda functions
आप lambda functions का उपयोग करने में काफ़ी माहिर हो रहे हैं! अब अपनी स्किल-सेट में एक और फंक्शन जोड़ते हैं। reduce() फंक्शन किसी list पर computation चलाने में काम आता है और, map() तथा filter() के विपरीत, एक single value लौटाता है। reduce() का उपयोग करने के लिए, आपको इसे functools मॉड्यूल से इम्पोर्ट करना होगा.
कुछ अभ्यास पहले वाले gibberish() को याद है?
# Define gibberish
def gibberish(*args):
"""Concatenate strings in *args together."""
hodgepodge = ''
for word in args:
hodgepodge += word
return hodgepodge
gibberish() एक list of strings को आर्ग्युमेंट के रूप में लेता है और सभी strings को जोड़कर एक single-value परिणाम देता है। इस अभ्यास में, आप reduce() और एक lambda function का उपयोग करके, जो strings को आपस में जोड़ता है, इसी फ़ंक्शनैलिटी को दोहराएँगे.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Functions का परिचय
अभ्यास निर्देश
functoolsमॉड्यूल सेreduceफंक्शन इम्पोर्ट करें.reduce()कॉल में, एक lambda function पास करें जो दो string आर्ग्युमेंटitem1औरitem2लेता है और उन्हें जोड़ता है; साथ ही strings की liststarkभी पास करें। परिणाम कोresultमें असाइन करें।reduce()का पहला आर्ग्युमेंट lambda function होना चाहिए और दूसरा आर्ग्युमेंट liststark.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import reduce from functools
# Create a list of strings: stark
stark = ['robb', 'sansa', 'arya', 'brandon', 'rickon']
# Use reduce() to apply a lambda function over stark: result
result = reduce(____, ____)
# Print the result
print(result)