हालांकि मैं योगदान दे सकता था, एक लाइन ब्रेकर का उपयोग करें:
x = lambda x,y: x-y if x<y \
else y-x if y<x \
else 0
बहुत अच्छी बात यह मत भूलो कि अजगर ऑनलाइनर लिखने में सक्षम है, उदाहरण के लिए:
a=b=0; c=b+a; d = a+b**2 #etc etc
और लैम्ब्डा बहुत शक्तिशाली है, लेकिन यह 1 पूरे फ़ंक्शन के प्रतिस्थापन के लिए नहीं है, मेरा मतलब है कि आप इसे हैक कर सकते हैं जैसे (ऊपर सहयोगी से उधार लेना):
makeTag = lambda tagName: "<{}>".format(tagName)
closeTag = lambda tagName: makeTag("/"+str(tagName))
openTag = lambda tagName: makeTag(tagName)
writeHMTLline = lambda tag,content: ""+opetTag(tag)+str(content)+closeTag(tag)
लेकिन क्या आप वाकई ऐसा करना चाहते हैं? यह ज्यादातर कुछ समय के बाद अपठनीय होता है, यह रस्सी की शुरुआत की तरह होता है जिसकी शुरुआत अनवैलिड एंड से होती है।
लैम्ब्डा फंक्शनल ओरिएंटेड प्रोग्रामिंग (अन्य बातों के अलावा) में केवल एक ही फ़ंक्शन, मैप, फ़िल्टर और फ़ंक्शंस को कम करने के रूप में मानसिक होते हैं। उदाहरण के लिए वर्ण मान प्राप्त करना जो पूर्णांक और 2 से विभाज्य हैं
chrDev2 = lambda INT: chr(INT) if isinstance(INT,int) and INT%2==0 else INT
someStringList = map( chrDev2, range(30) )
>>> ['\x00', 1, '\x02', 3, '\x04', 5, '\x06', 7, '\x08', 9, '\n', 11, '\x0c', 13, '\x0e', 15, '\x10', 17, '\x12', 19, '\x14', 21, '\x16', 23, '\x18', 25, '\x1a', 27, '\x1c', 29]
आप इसे जटिल कार्य (या अधिक और कई लंबोदा) को अलग करने और इसे एक और मेमने के अंदर डालकर फंक्शन एक्सप्रेशन फंक्शन के रूप में उपयोग कर सकते हैं:
def someAnon(*args): return sum(list(args))
defAnon = lambda list: [ x*someAnon(*list) for x in list]
लेकिन पायथन के पास एक और तरीके से फंक्शन एक्सर्साइज़ सपोर्ट है: -लेट्स का कहना है कि आपके पास कुछ फंक्शन है superAwesomeFunction
और वह फंक्शन कुछ सुपर कमाल का सामान कर सकता है, आप इसे वेरिएबल न कहकर असाइन कर सकते हैं, जैसे:
SAF = superAwesomeFunction # there is no () at the end,
इसलिए अब जब आप SAF को कॉल करते हैं तो आप superAwesomeFunction या विधि को कॉल करेंगे। यदि आप अपने लिब फ़ोल्डर को गर्त में खोजते हैं, तो आप पा सकते हैं कि अधिकांश अजगर __builtin__
मॉड्यूल उस तरह से लिखे गए हैं। ऐसा इसलिए किया जाता है क्योंकि कभी-कभी आपको कुछ कार्यों की आवश्यकता होगी जो विशिष्ट कार्य करते हैं जो उपयोगकर्ता द्वारा उपयोग करने योग्य होने के लिए पर्याप्त नहीं है, लेकिन कई फ़ंक्शन के लिए आवश्यक है। तो फिर आपके पास एक विकल्प है कि आप "सुपरअवैलफंक्शन" नाम के साथ 2 कार्य नहीं कर सकते हैं, तो आपके पास "सुपरएवियसफ़ंक्शनडॉइंगबासिकस्टफ़" और "रियलसुपरएवफ़रफ़ंक्शन" हो सकते हैं और "सुपरव्यूफ़िएन्फ़ंक्शन" वेरिएबल में केवल "रियलसुपरएवफ़रफ़ंक्शन" डाल सकते हैं और आपको किया जाता है।
आप कंसोल importedModule.__file__
(वास्तविक उदाहरण import os;os.__file__
) में प्रवेश करके आयातित मॉड्यूल का स्थान पा सकते हैं , और बस उस निर्देशिका का पालन करें जिसे importModule.py नाम की फ़ाइल में दर्ज करें और इसे संपादक में खोलें और पाएं कि आप अपने स्वयं के "ज्ञान" को अधिकतम कैसे कर सकते हैं।
मुझे उम्मीद है कि इससे आपको और शायद अन्य सहयोगियों को परेशानी होगी।