इस key=func भाग का max(a,b,c,key=func) में क्या मतलब है https ://docs.python.org/2/library/functions.html#min?

मुझे पता है कि यह फ़ंक्शन पायथन में कैसे काम करता है। लेकिन आमतौर पर मैं देखता हूं कि इसका इस्तेमाल बस के रूप में किया जाता है z = max(a, b, c) लेकिन पायथन डॉक्स में मुझे यह हिस्सा मिल गया है और मैं इसे समझ नहीं पा रहा हूं। क्या यह इस फ़ंक्शन की कुछ अतिरिक्त वैकल्पिक विशेषता है या क्या?

-7
Constantine Ketskalo 19 जिंदा 2017, 18:26
8
वह सटीक अनुच्छेद जिससे आप लिंक करते हैं आपको बताता है कि key तर्क क्या करता है।
 – 
Daniel Roseman
19 जिंदा 2017, 18:27
1
खैर, यह एक वाक्य है जो कह रहा है "वैकल्पिक कुंजी तर्क एक-तर्क ऑर्डरिंग फ़ंक्शन को निर्दिष्ट करता है जैसे कि सूची के लिए उपयोग किया जाता है। सॉर्ट ()।"। अपने आप में यह बहुत मददगार नहीं हो सकता है, लेकिन यह आपको सही दिशा में इंगित करता है (list.sort() के दस्तावेज़ीकरण को देखने के लिए जो इसके key पैरामीटर का अधिक विस्तृत विवरण प्रदान करता है)।
 – 
Tagc
19 जिंदा 2017, 18:31
मैं टैगसी से सहमत हूं: बहुत से उपयोगकर्ता तब तक बिंदु नहीं देखते हैं जब तक वे एक सटीक उदाहरण नहीं देखते।
 – 
Jean-François Fabre
19 जिंदा 2017, 18:35

1 उत्तर

सबसे बढ़िया उत्तर

यह एक मानदंड को परिभाषित करने की अनुमति देता है जो तत्वों के बीच < तुलना को प्रतिस्थापित करता है।

उदाहरण के लिए:

>>>l = ["hhfhfhh","xx","123455676883"]
>>>max(l, key=len)
'123455676883'

सूची में सबसे लंबी स्ट्रिंग देता है जो "123455676883" है

इसके बिना, यह "xx" लौटाएगा क्योंकि यह स्ट्रिंग तुलना के अनुसार उच्चतम रैंकिंग स्ट्रिंग है।

>>>l = ["hhfhfhh","xx","123455676883"]
>>>max(l)
'xx'
5
Mohammad Yusuf 19 जिंदा 2017, 18:33
बहुत - बहुत धन्यवाद। ) यह मेरे लिए अधिक समझ में आता है। तो, मूल रूप से func के स्थान पर किसी भी फ़ंक्शन का उपयोग किया जा सकता है, जिसे डॉट नोटेशन के साथ सूची के तत्वों पर लागू किया जा सकता है (जिसका अर्थ है कि यह स्ट्रिंग क्लास या किसी भी वर्ग में शामिल है)। क्या वो सही है?
 – 
Constantine Ketskalo
23 जिंदा 2017, 18:58
हां। यह सही है। और अगर इसमें कुछ बदलाव की जरूरत है, तो आप अपने कार्यों को परिभाषित करने के लिए lambda का उपयोग कर सकते हैं। उदाहरण: प्रदान करें लेन -3 होगा: lambda s : len(s)-3
 – 
Jean-François Fabre
23 जिंदा 2017, 19:31