यहां 11 युक्तियां और तरकीबें दी गई हैं जो आपको बेहतर पायथन कोड लिखने और एक बेहतर प्रोग्रामर बनने में मदद करेंगी: 1. इसके बजाय गणना या range(len(x)) पायथन में, हम आम तौर पर एक पुनरावृत्त वस्तु पर पुनरावृति करने लूप के लिए उपयोग करते हैं। पायथन में लूप के संग्रह आधारित पुनरावृत्ति का उपयोग करता है यानी पायथन प्रत्येक पुनरावृत्ति पर एक पुनरावृत्त से लूप चर के लिए अगला आइटम निर्दिष्ट करता है। लूप के सामान्य उपयोगकेस इस प्रकार है: for for for values = ["a", "b", "c"] for value in values: print(value) # a # b # c अब, यदि मूल्य के अतिरिक्त, आप इंडेक्स को भी प्रिंट करना चाहते हैं, तो आप इसे इस तरह कर सकते हैं: index = 0 for value in values: print(index, value) index += 1 # 0 a # 1 b # 2 c या ऐसा करने का एक और आम तरीका का उपयोग कर रहा है: range(len(x)) for index in range(len(values)): value = values[index] print(index, value) # 0 a # 1 b # 2 c हालांकि, का उपयोग करके पुनरावृत्त वस्तुओं पर पुनरावृति करने का एक आसान और अधिक पाइथोनिक तरीका है। इसका उपयोग लूप लगभग उसी तरह किया जाता है जैसे आप सामान्य तरीके से हैं, लेकिन लूप सीधे चलने योग्य वस्तु को डालने के बजाय, या इसे के रूप में उपयोग करने के बजाय, आप इसे अंदर डालते हैं के कोष्ठक जैसा कि नीचे दिखाया गया है: enumerate() for for in range(len(values)) enumerate() for count, value in enumerate(values): print(count, value) # 0 a # 1 b # 2 c हम नीचे दिखाए गए अनुसार के लिए एक तर्क को भी परिभाषित कर सकते हैं: enumerate() start for count, value in enumerate(values, start=1): print(count, value) # 1 a # 2 b # 3 c फ़ंक्शन दो चर वापस देता है: enumerate() वर्तमान पुनरावृत्ति की गिनती वर्तमान पुनरावृत्ति पर आइटम का मूल्य लूप के लूप वेरिएबल्स की तरह, लूप वेरिएबल्स को कुछ भी नाम दिया जा सकता है, उदाहरण के लिए, हम तब और को कॉल कर सकते हैं और वे अभी भी काम करेंगे। लूप के की तुलना में अधिक कुशल है क्योंकि यह आपको लूप के अंदर मूल्य तक पहुंचने और इसे सही ढंग से उपयोग करने के लिए याद रखने की परेशानी से बचाता है और फिर लूप वैरिएबल के मूल्य को आगे बढ़ाने के लिए भी याद रखता है, यह सब पाइथन द्वारा स्वचालित रूप से नियंत्रित किया जाता है . for index value enumerate() for 2. लूप के लिए कच्चे के बजाय सूची समझ का प्रयोग करें सूची समझ मौजूदा सूचियों के आधार पर एक सूची बनाने को परिभाषित करने का एक आसान और सुरुचिपूर्ण तरीका है। वे कोड की केवल एक पंक्ति हैं जिसमें अभिव्यक्ति वाले ब्रैकेट होते हैं जिन्हें बार-बार प्रत्येक पुनरावृत्ति पर निष्पादित किया जाता है। इसलिए, वे लूप की तुलना में अधिक समय और स्थान कुशल हैं और कोड की एक पंक्ति में पुनरावृत्त कथनों को बदलते हैं। सूची बोध का सामान्य सिंटैक्स इस तरह दिखता है: newList = [ expression(element) for element in oldList if condition ] कोड में सूची समझ का एक उदाहरण यहां दिया गया है: # Using list comprehension to iterate through loop List = [character for character in 'HackerNoon'] # Displaying list print(List) # Output # ['H', 'a', 'c', 'k', 'e', 'r', 'N', 'o', 'o', 'n'] 3. क्रमबद्ध के साथ जटिल पुनरावृत्तियों को छाँटें sorted() पायथन फ़ंक्शन एक विशिष्ट क्रम (आरोही या अवरोही) में एक पुनरावृत्त वस्तु के तत्वों को क्रमबद्ध करता है और उन्हें एक क्रमबद्ध सूची के रूप में लौटाता है। इसका उपयोग अनुक्रम (स्ट्रिंग, टपल, सूची) या संग्रह (सेट, शब्दकोश, जमे हुए सेट) या किसी अन्य पुनरावर्तक को सॉर्ट करने के लिए किया जा सकता है। sorted() फ़ंक्शन का सिंटैक्स इस प्रकार है: sorted() sorted(iterable, key=None, reverse=False) फ़ंक्शन अधिकतम तीन पैरामीटर लेता है: sorted() चलने योग्य: यह कोई भी पुनरावर्तक हो सकता है कुंजी: यह एक वैकल्पिक तर्क है जो सॉर्ट तुलना के लिए एक कुंजी के रूप में कार्य करता है। रिवर्स: यह एक वैकल्पिक तर्क भी है जिसका उपयोग आउटपुट के रूप में उलटी क्रमबद्ध सूची को निर्दिष्ट करने के लिए किया जाता है 4. सेट के साथ अद्वितीय मूल्यों को स्टोर करें एक पायथन सेट इसमें डुप्लिकेट मानों की एक प्रति संग्रहीत करता है। इसलिए, इसका उपयोग किसी सूची में अद्वितीय मानों की जांच के लिए किया जा सकता है। उदाहरण के लिए: list_inp = [100, 75, 100, 20, 75, 12, 75, 25] set_res = set(list_inp) print("The unique elements of the input list using set():\n") list_res = (list(set_res)) for item in list_res: print(item) तो उपरोक्त कार्यक्रम का आउटपुट इस तरह दिखेगा: The unique elements of the input list using set(): 25 75 100 20 12 5. जेनरेटर के साथ मेमोरी सेव करें जनरेटर का मूल कार्य मांग पर तत्वों का मूल्यांकन करना है। यह सूची बोध के लिए वाक्य रचना के समान है, जहां वर्ग कोष्ठक के बजाय, हम कोष्ठक का उपयोग करते हैं। आइए एक उदाहरण पर विचार करें जहां हम एक सूची में सभी सम संख्याओं के वर्ग को प्रिंट करना चाहते हैं: myList = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print("The given list is:", myList) mygen = (element ** 2 for element in myList if element % 2 == 0) print("Elements obtained from the generator are:") for ele in mygen: print(ele) उपरोक्त कोड का आउटपुट इस तरह दिखेगा: The given list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Elements obtained from the generator are: 4 16 36 64 100 यह कहने के बाद कि उनका सिंटैक्स सूची समझ के समान है, आप सोच रहे होंगे कि यह सूची या सेट समझ से कैसे अलग है। सूची या सेट समझ के विपरीत, जनरेटर की समझ किसी भी वस्तु को प्रारंभ नहीं करती है। नतीजतन, आप प्रोग्राम की मेमोरी आवश्यकताओं को कम करने के लिए सूची या सेट समझ के बजाय जनरेटर समझ का उपयोग कर सकते हैं। 6. शब्दकोशों में और के साथ डिफ़ॉल्ट मानों को परिभाषित करें .get() .setdefault() विधि तानाशाही सेट करने की अनुमति देती है यदि कुंजी पहले से ही तानाशाही में नहीं है। .setdefault() dict[key]=default का सिंटैक्स निम्न जैसा दिखता है: .setdefault() dict.setdefault(key, default=None) का उपयोग करने के तरीके को समझने के लिए यहां एक उदाहरण कोड स्निपेट दिया गया है: .setdefault() a_dictionary = {"a": 1, "b": 2, "d": 4} a_dictionary.setdefault("c", 3) print(a_dictionary) उपरोक्त कोड का आउटपुट इस तरह दिखेगा: {'a': 1, 'b': 2, 'd': 4, 'c': 3} कुंजी के लिए एक डिफ़ॉल्ट मान पास करके विधि का उपयोग करके भी यही बात हासिल की जा सकती है, जैसा कि आप नीचे देख सकते हैं: .get() a_dictionary = {"a": 1, "b": 2, "d": 4} print(a_dictionary.get("c", 3)) print(a_dictionary) उपरोक्त कोड का आउटपुट निम्न जैसा दिखेगा: 3 {'a': 1, 'b': 2, 'd': 4} 7. के साथ हैश करने योग्य वस्तुओं की गणना करें। काउंटर collections.Counter संग्रह मॉड्यूल उच्च-प्रदर्शन कंटेनर डेटाटाइप का समर्थन करता है (अंतर्निहित प्रकार की सूची, तानाशाही और टपल के अलावा) और मेमोरी में जानकारी संग्रहीत करने के लिए कई उपयोगी डेटा संरचनाएं शामिल हैं। एक काउंटर एक कंटेनर है जो बराबर मूल्यों को जोड़े जाने की संख्या का ट्रैक रखता है। इसका उपयोग उसी एल्गोरिदम को लागू करने के लिए किया जा सकता है जो अन्य भाषाएं बैग या मल्टीसेट डेटा संरचनाओं को लागू करने के लिए नियोजित करती हैं। आयात संग्रह संग्रह में सामग्री को इस प्रकार उपलब्ध कराता है: import collections चूंकि हम केवल काउंटर का उपयोग करने जा रहे हैं, हम बस यह कर सकते हैं: from collections import Counter इसका उपयोग इस प्रकार किया जा सकता है: import collections c = collections.Counter('abcdaab') for letter in 'abcde': print '%s : %d' % (letter, c[letter]) उपरोक्त कोड का आउटपुट इस तरह दिखेगा: a : 3 b : 2 c : 1 d : 1 e : 0 8. f-Strings के साथ स्ट्रिंग्स को प्रारूपित करें (पायथन 3.6+) f-strings, जिसे "स्वरूपित स्ट्रिंग अक्षर" भी कहा जाता है, स्ट्रिंग्स को प्रारूपित करने का एक नया और अधिक पाइथोनिक तरीका है, जो Python 3.6+ द्वारा समर्थित है। वे पाइथन में स्ट्रिंग स्वरूपण का एक तेज़, अधिक पठनीय, अधिक संक्षिप्त, और कम त्रुटि प्रवण तरीका हैं। जैसा कि "एफ-स्ट्रिंग" नाम कहता है, वे स्ट्रिंग अक्षर हैं जिनमें शुरुआत में एफ और अभिव्यक्ति वाले घुंघराले ब्रेसिज़ होते हैं जिन्हें रनटाइम पर उनके मूल्यों से बदल दिया जाएगा और फिर प्रोटोकॉल का उपयोग करके स्वरूपित किया जाएगा। __format__ एफ-स्ट्रिंग्स का उपयोग निम्नलिखित के रूप में किया जा सकता है: name = "Eric" age = 74 print(f"Hello, {name}. You are {age}.") # 'Hello, Eric. You are 74.' 9. के साथ तार जोड़ना .join() पायथन में, हम स्ट्रिंग्स की सूची को एक स्ट्रिंग में जोड़ने के लिए विधि का उपयोग कर सकते हैं। इस विधि के लिए सामान्य सिंटैक्स नीचे जैसा दिखता है: .join() 'String to insert'.join([List of strings]) इसका उपयोग कई तरीकों से किया जा सकता है - यदि आप खाली स्ट्रिंग का उपयोग करते हैं, तो [स्ट्रिंग्स की सूची] को बस संयोजित किया जाता है, और यदि आप अल्पविराम का उपयोग करते हैं, तो अल्पविराम-सीमांकित स्ट्रिंग बनाई जाती है। जब न्यूलाइन कैरेक्टर का उपयोग किया जाता है, तो प्रत्येक स्ट्रिंग के बाद एक नई लाइन जोड़ दी जाती है। नीचे दिया गया उदाहरण देखें: ““ \n l = ['aaa', 'bbb', 'ccc'] s = ''.join(l) print(s) # aaabbbccc s = ','.join(l) print(s) # aaa,bbb,ccc s = '-'.join(l) print(s) # aaa-bbb-ccc s = '\n'.join(l) print(s) # aaa # bbb # ccc 10. शब्दकोशों को के साथ मिलाएं (पायथन 3.5+) {**d1, **d2} शब्दकोशों को मर्ज करने का सबसे आसान तरीका अनपैकिंग ऑपरेटर ( ) का उपयोग करना है। इस विधि का सिंटैक्स इस तरह दिखता है: ** {**dict1, **dict2, **dict3} इस विधि को बेहतर ढंग से समझने के लिए यहां एक उदाहरण दिया गया है: d1 = {'k1': 1, 'k2': 2} d2 = {'k3': 3, 'k4': 4} print({**d1, **d2}) # {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4} 11. if-statement को सरल बनाएं if x in list मान लें कि हमारे पास प्राथमिक रंगों लाल, हरे और नीले रंग के साथ एक सूची है। और कहीं न कहीं हमारे कोड में, हमारे पास एक रंग के साथ एक नया चर है, इसलिए c = लाल। फिर हम देखेंगे कि क्या यह हमारे प्राथमिक रंगों में से एक है। बेशक, हम इसे अपनी सूची में प्रत्येक आइटम के खिलाफ निम्नानुसार जांच सकते हैं: colors = ["red", "green", "blue"] c = "red" # cumbersome and error-prone if c == "red" or c == "green" or c == "blue": print("is main color") हालाँकि, यह काफी समय लेने वाला हो सकता है, और हम आसानी से गलतियाँ कर सकते हैं, जैसे कि अगर हमारे यहाँ लाल रंग के लिए एक टाइपो है। यदि सूची में x है तो केवल अभिव्यक्ति का उपयोग करना अधिक सरल और बेहतर है: colors = ["red", "green", "blue"] c = "red" # better: if c in colors: print("is main color") निष्कर्ष पायथन एक व्यापक रूप से उपयोग की जाने वाली प्रोग्रामिंग भाषा है और उपरोक्त युक्तियों और युक्तियों का उपयोग करके आप एक बेहतर पायथन प्रोग्रामर बन सकते हैं। मुझे उम्मीद है कि यह लेख मददगार था। पढ़ते रहिये!