सीखें कि Python के pop() मेथड का उपयोग सूचियों और डिक्शनरीज़ से तत्व हटाने के लिए कैसे करें, जिसमें इटरेट करते समय आइटम हटाना भी शामिल है। IndexError और KeyError जैसी सामान्य त्रुटियों से बचना सीखें।
Python में pop() मेथड डेटा मैनिपुलेशन में एक महत्वपूर्ण फ़ंक्शन है, जिसका उपयोग किसी सूची या डिक्शनरी से निर्दिष्ट तत्व को हटाने और उसे वापस लौटाने के लिए किया जाता है। Python प्रोग्रामर pop() मेथड को पसंद करते हैं क्योंकि यह सूचियों और डिक्शनरीज़ जैसी डेटा संरचनाओं में बदलाव करने का विशेष रूप से सरल तरीका है।
विस्तार में जाने से पहले, मैं आपको DataCamp का Introduction to Python कोर्स करने की अत्यधिक सलाह देता/देती हूँ ताकि आप Python भाषा की बुनियादी बातें सीख सकें। Python Cheat Sheet for Beginners भी Python की सिंटैक्स और अलग-अलग फ़ंक्शनों को समझने और संदर्भ के लिए मददगार है।
त्वरित उत्तर: Python में pop() मेथड का उपयोग कैसे करें
pop() मेथड का उपयोग सूचियों और डिक्शनरीज़ में विशिष्ट आइटम हटाने और उसका मान वापस करने के लिए किया जाता है। मैं दोनों के लिए एक त्वरित उदाहरण दिखाऊँगा/दिखाऊँगी। पहला उदाहरण दिखाता है कि pop() मेथड का उपयोग करके सूची से कोई आइटम कैसे हटाएँ। निम्न कोड 5 प्रिंट करता है।
# Create a list
my_list =[1,2,3,4,5]# Removes and returns the last element of the list
last_element = my_list.pop()print(last_element)संचालित द्वारा
अगला उदाहरण दिखाता है कि pop() मेथड का उपयोग करके डिक्शनरी से कोई विशिष्ट कुंजी (key) कैसे हटाएँ। निम्न कोड 3 प्रिंट करता है।
# Create a dictionary
my_dict ={'a':1,'b':2,'c':3}# Removes and returns the value associated with the key 'b'
value = my_dict.pop('c')print(value)संचालित द्वारा
सूचियों के साथ pop() का उपयोग
pop() मेथड का उपयोग सूची से निर्दिष्ट तत्व को हटाने और वापस लौटाने के लिए किया जाता है। सूचियों के साथ pop() मेथड की सिंटैक्स नीचे दिखाई गई है।
जब आप सूचियों के साथ pop() मेथड का उपयोग करते हैं, तो यह एक वैकल्पिक पैरामीटर ले सकता है जिससे हटाए जाने वाले इंडेक्स को निर्दिष्ट किया जा सके। यदि कोई पैरामीटर प्रदान नहीं किया जाता है, तो pop() मेथड सूची के अंतिम तत्व को हटाता है और उसे वापस करता है।
यदि आप इंडेक्स को स्पष्ट रूप से निर्दिष्ट करना चुनते हैं और इसमें गलती होती है, तो सीमा से बाहर इंडेक्स होने पर IndexError उठेगा। आइए नीचे सूचियों के साथ pop() मेथड के अलग-अलग उपयोग मामलों को देखें।
इंडेक्स द्वारा तत्व हटाने के लिए pop() का उपयोग
आप pop() मेथड में तर्क (argument) के रूप में धनात्मक या ऋणात्मक इंडेक्स का उपयोग करके सूची से हटाए जाने वाले तत्व को निर्दिष्ट कर सकते हैं। Python में धनात्मक इंडेक्स सूची की शुरुआत में 0 से शुरू होते हैं। ऋणात्मक इंडेक्स सूची के अंत से -1 से शुरू होते हैं।
निम्न उदाहरण सूची से तत्व हटाने के ये तीन तरीके दिखाते हैं। हर मामले में, कोड का आउटपुट 5 प्रिंट करेगा।
# Create a list
my_list =[1,2,3,4,5]# Removes and returns the last element of the list
last_element = my_list.pop()print(last_element)संचालित द्वारा
# Create a list
my_list =[1,2,3,4,5]# Remove specific element using negative index
removed_element = my_list.pop(-1)print(removed_element)संचालित द्वारा
# Create a list
my_list =[1,2,3,4,5]# Remove specific element using negative index
removed_element = my_list.pop(4)print(removed_element)संचालित द्वारा
इटरेट करते समय सूची से आइटम हटाने के लिए pop() का उपयोग
आप pop() मेथड को एक लूप में उपयोग करके हर बार अंतिम आइटम हटाते हुए सूची को खाली होने तक इटरेट कर सकते हैं। नीचे दिया गया उदाहरण दिखाता है कि लूप्स में pop() मेथड कैसे उपयोग करें। यह कोड List is now empty प्रिंट करेगा।
# Create a list
my_list =[1,2,3,4,5]# Create a function to remove items from the listwhile my_list:
element = my_list.pop()print(f"Removed element: {element}")print("List is now empty:", my_list)संचालित द्वारा
यह तकनीक कई परिदृश्यों में सहायक हो सकती है। मान लीजिए, उदाहरण के लिए, आपके पास कार्यों की एक सूची है जिसे एक-एक करके निपटाना है। pop() का उपयोग करके, आप हर कार्य को पूरा होने पर हटा सकते हैं, जिससे आपकी सूची केवल बचे हुए कार्यों पर केंद्रित रहती है।
नैस्टेड सूचियों के साथ pop() का उपयोग
आप नैस्टेड सूचियों से तत्व हटाने के लिए pop() मेथड का उपयोग कर सकते हैं। यह मेथड नैस्टेड सूची में से निर्दिष्ट सूची को हटाता है और उसे वापस लौटाता है। निम्न कोड [7, 8, 9] प्रिंट करेगा।
# Define a nested list
nested_list =[[1,2,3],[4,5,6],[7,8,9]]# Pop an element from the outer list
removed_list = nested_list.pop()print(removed_list)संचालित द्वारा
यदि आप आंतरिक सूची से कोई विशिष्ट तत्व हटाना चाहते हैं, तो पहले नैस्टेड सूची में उस सूची का इंडेक्स निर्दिष्ट करें। नीचे दिया गया कोड 9 प्रिंट करता है, जो दूसरे इंडेक्स पर सूची का अंतिम तत्व है।
# Define a nested list
nested_list =[[1,2,3],[4,5,6],[7,8,9]]# Pop an element from an inner list
removed_element = nested_list[2].pop()print(removed_element)संचालित द्वारा
pop() इंडेक्स आउट ऑफ रेंज को हैंडल करना
जब आप किसी सूची से ऐसा तत्व हटाने की कोशिश करते हैं जिसका इंडेक्स उस सूची की सीमा से बाहर है, तो IndexError उठता है। इस त्रुटि से बचने के लिए, पहले सूची की लंबाई जाँचना और फिर उपयुक्त इंडेक्स देना महत्वपूर्ण है। आप त्रुटि पकड़ने के लिए try-except ब्लॉक का भी उपयोग कर सकते हैं। नीचे दिया गया कोड दोनों मामलों में Index out of range प्रिंट करेगा।
# Create a list
my_list =[1,2,3]# Check length before popping
index =4# Ensure the index is within the valid range of the listif0<= index <len(my_list):# Removes and returns the element at the specified index
element = my_list.pop(index)print(f"Popped element: {element}")else:print("Index out of range")संचालित द्वारा
# Create a list
my_list =[1,2,3]# Using try-except block to handle out-of-range indextry:# Attempt to remove and return the element at index 5
element = my_list.pop(5)except IndexError:# Catches the IndexError if the index is out of rangeprint("Index out of range")संचालित द्वारा
डिक्शनरीज़ के साथ pop() का उपयोग
pop() मेथड का उपयोग डिक्शनरीज़ में किसी निर्दिष्ट कुंजी को हटाने और उसका मान वापस लौटाने के लिए किया जाता है। डिक्शनरीज़ के साथ pop() मेथड की सिंटैक्स नीचे दिखाई गई है।
हम देख सकते हैं कि डिक्शनरी के साथ उपयोग करने पर pop() मेथड के लिए एक कुंजी को पैरामीटर के रूप में देना आवश्यक है।pop() मेथड निर्दिष्ट कुंजी से जुड़े मान को वापस करता है और उस कुंजी-मूल्य जोड़ी को डिक्शनरी से हटा देता है।
आप एक वैकल्पिक डिफ़ॉल्ट मान भी प्रदान कर सकते हैं जो कुंजी न मिलने पर लौटाया जाए। यदि निर्दिष्ट कुंजी नहीं मिलती और कोई डिफ़ॉल्ट मान प्रदान नहीं किया गया है, तो KeyError उठता है। यदि डिफ़ॉल्ट मान दिया गया है, तो वह डिफ़ॉल्ट मान लौटाया जाता है।
Python डिक्शनरी डिफ़ॉल्ट मान
डिक्शनरीज़ के साथ pop() मेथड का उपयोग करते समय, आप ऐसा डिफ़ॉल्ट मान दे सकते हैं जिसे कुंजी न मिलने पर लौटाया जाए। यह तरीका आमतौर पर KeyError से बचने के लिए उपयोग किया जाता है। नीचे दिया गया कोड Not Found प्रिंट करता है क्योंकि कुंजी d संग्रह में मौजूद नहीं है।
# Create a dictionary
my_dict ={'a':1,'b':2,'c':3}# Remove a specific key and provide default value
value = my_dict.pop('d','Not Found')# Prints the returned valueprint(value)संचालित द्वारा
नैस्टेड डिक्शनरीज़ के साथ pop() मेथड का उपयोग
सूचियों की तरह, आप नैस्टेड डिक्शनरीज़ में तत्व हटाने के लिए pop() मेथड का उपयोग कर सकते हैं। नैस्टेड डिक्शनरीज़ वे होती हैं जिनमें डिक्शनरीज़ के अंदर डिक्शनरीज़ होती हैं। निम्न कोड {'x': 7, 'y': 8, 'z': 9} प्रिंट करेगा।
# Define a nested dictionary
nested_dict ={'a':{'x':1,'y':2,'z':3},'b':{'x':4,'y':5,'z':6},'c':{'x':7,'y':8,'z':9}}# Pop a key-value pair from the outer dictionary
removed_dict = nested_dict.pop('c')print(removed_dict)संचालित द्वारा
आप नैस्टेड डिक्शनरीज़ में किसी विशिष्ट डिक्शनरी से उसकी कुंजी बताकर आंतरिक मान भी हटा सकते हैं। नीचे दिया गया कोड 2 प्रिंट करता है।
# Define a nested dictionary
nested_dict ={'a':{'x':1,'y':2,'z':3},'b':{'x':4,'y':5,'z':6},'c':{'x':7,'y':8,'z':9}}# Pop a key-value pair from an inner dictionary
popped_inner_value = nested_dict['a'].pop('y')print(popped_inner_value)संचालित द्वारा
Python डिक्शनरी KeyError को हैंडल करना
KeyError को अधिक सहजता से हैंडल करने का एक और सामान्य तरीका है try-except ब्लॉक का उपयोग करके त्रुटि को पकड़ना। निम्न उदाहरण दिखाता है कि try-except तकनीक को pop() मेथड के साथ कैसे उपयोग करें।
# Create a dictionary
my_dict ={'a':1,'b':2,'c':3}# Create the try-except block to catch the errortry:
value = my_dict.pop('d')except KeyError:print("Key not found")संचालित द्वारा
आप in कीवर्ड का उपयोग करके यह जाँच भी कर सकते हैं कि किसी डिक्शनरी में कोई विशिष्ट कुंजी मौजूद है या नहीं, हटाने से पहले। नीचे दिया गया कोड इस विधि का उपयोग करता है और Key not found. लौटाता है।
# Create a dictionary
my_dict ={'a':1,'b':2}# Check key existence before popping
key ='c'if key in my_dict:
value = my_dict.pop(key)print(f"Popped value: {value}")else:print("Key not found.")संचालित द्वारा
प्रदर्शन संबंधी विचार
इस खंड में, हम सूचियों और डिक्शनरीज़ के साथ pop() मेथड का उपयोग करने के प्रदर्शन संबंधी निहितार्थों पर नज़र डालेंगे।
सूची संचालन
सूचियों में pop() ऑपरेशनों की समय जटिलता हटाए जाने वाले तत्व के इंडेक्स पर निर्भर करती है। जब आप बिना तर्क के या -1 इंडेक्स के साथ pop() का उपयोग करके अंतिम तत्व हटाते हैं, तो यह O(1) समय में काम करता है क्योंकि यह सूची के केवल अंतिम तत्व को हटाता है और अन्य तत्वों को नहीं बदलता।
जब हम पहले या किसी अन्य तत्व को हटाने के लिए pop() मेथड का उपयोग करते हैं, तो यह O(n) समय में काम करता है क्योंकि इसमें एक तत्व को हटाना और अन्य तत्वों को नए इंडेक्स क्रम में शिफ्ट करना शामिल होता है। Python में समय जटिलता पर अधिक जानने के लिए हमारा Analyzing Complexity of Code through Python ट्यूटोरियल देखें।
डिक्शनरी संचालन
डिक्शनरीज़ में pop() मेथड अंतर्निहित हैश टेबल के कार्यान्वयन के कारण अत्यंत कुशल है। इस परिदृश्य में, डिक्शनरी के साथ pop() मेथड सामान्यतः O(1) ऑपरेशन होता है।
यह समय जटिलता इसलिए है क्योंकि डिक्शनरी कुंजियों को हैश टेबल में संग्रहीत करती है और इंसर्शन, डिलेशन और लुकअप के लिए कुछ समय लगता है। साथ ही, ध्यान दें कि pop() मेथड का उपयोग करते समय आपको हमेशा हटाई जाने वाली कुंजी निर्दिष्ट करनी होती है। हैश टेबल्स के बारे में और जानने के लिए हमारा A Guide to Python Hashmaps ट्यूटोरियल देखें।
Python के pop() मेथड के विकल्प
हालाँकि pop() मेथड सूचियों और डिक्शनरीज़ से तत्व हटाने में प्रभावी है, कुछ विकल्प भी मौजूद हैं।
del कीवर्ड का उपयोग
del कीवर्ड का उपयोग सूची से किसी आइटम को उसके इंडेक्स द्वारा हटाने के लिए किया जाता है। del कीवर्ड का उपयोग डिक्शनरीज़ से निर्दिष्ट कुंजी-मूल्य जोड़े हटाने के लिए भी किया जा सकता है। ध्यान दें कि del कीवर्ड हटाए गए तत्व को वापस नहीं करता, जबकि pop() मेथड करता है।
नीचे दिए गए उदाहरण दिखाते हैं कि सूची और डिक्शनरी से तत्व हटाने के लिए del कीवर्ड का उपयोग कैसे करें। दूसरे इंडेक्स पर स्थित तत्व हटाने के बाद, निम्न कोड नई सूची [1, 2, 4, 5] प्रिंट करता है।
# Initialize a list with integers from 1 to 5
my_list =[1,2,3,4,5]# Remove item at index 2del my_list[2]print(my_list)संचालित द्वारा
निम्न कोड {'a': 1, 'c': 3} प्रिंट करेगा।
# Create a dictionary
my_dict ={'a':1,'b':2,'c':3}# Remove the key 'b' and its associated value from the dictionarydel my_dict['b']print(my_dict)संचालित द्वारा
remove() मेथड का उपयोग
remove() मेथड केवल सूची पर लागू होता है, जब आप इंडेक्स के बजाय किसी तत्व को उसके सटीक मान द्वारा हटाना चाहते हैं। यदि सूची में वह तत्व एक से अधिक बार आता है, तो यह मेथड उसकी पहली उपस्थिति को हटाता है। नीचे दिया गया कोड [1, 3, 4, 5] प्रिंट करता है।
# Initialize a list with integers from 1 to 5
my_list =[1,2,3,4,5]# Remove the element with the value 2 from the list
my_list.remove(2)print(my_list)संचालित द्वारा
निष्कर्ष
pop() मेथड Python में विशेष रूप से सरल और बहुमुखी फीचर है, जिसका उपयोग सूचियों और डिक्शनरीज़ से तत्व हटाने के लिए किया जाता है, और जिसके प्रोग्रामिंग में कई व्यावहारिक उपयोग हैं। यह pop() मेथड सूचियों और डिक्शनरीज़ को हैंडल करते समय खास तौर पर महत्वपूर्ण है क्योंकि यह हटाए गए तत्व को वापस करता है—जो अक्सर वही व्यवहार होता है जिसकी आपको तलाश होती है।
एक डेटा विश्लेषक के रूप में, मैं DataCamp के Python Fundamentals और Python Programming स्किल ट्रैक्स देखने की सलाह देता/देती हूँ ताकि आप डेटा विश्लेषण के लिए अपनी Python कौशल को बेहतर बना सकें। मैं आपको हमारा Data Analyst with Python करियर ट्रैक भी देखने के लिए प्रोत्साहित करता/करती हूँ ताकि आप व्यावहारिक, नौकरी से संबंधित कौशल बनाते रहें।
डेटा एनालिटिक्स, बिज़नेस इंटेलिजेंस और डेटा साइंस में व्यावहारिक अनुभव रखने वाला डेटा साइंस तकनीकी लेखक। मैं SQL, Python, Power BI, Databricks और डेटा इंजीनियरिंग पर व्यावहारिक, उद्योग-केंद्रित सामग्री लिखता/लिखती हूँ, जो वास्तविक दुनिया की एनालिटिक्स कार्य से जुड़ी होती है। मेरी लेखनी तकनीकी गहराई और व्यावसायिक प्रभाव के बीच पुल का काम करती है, जिससे पेशेवरों को डेटा को आत्मविश्वासपूर्ण निर्णयों में बदलने में मदद मिलती है.
Frequently Asked Questions
pop() मेथड क्या करता है?⌄
pop() मेथड सूचियों या डिक्शनरीज़ से किसी तत्व को हटाता है और उसे वापस करता है।
pop() मेथड में IndexError क्या है?⌄
जब आप सीमा से बाहर इंडेक्स वाले तत्व को हटाने की कोशिश करते हैं, तो IndexError होता है।
pop() मेथड के विकल्प क्या हैं?⌄
सूचियों या डिक्शनरीज़ से तत्व हटाने के लिए remove() मेथड और del कीवर्ड वैकल्पिक तरीके हैं।
pop() और remove() मेथड में क्या अंतर है?⌄
pop() मेथड सूची या डिक्शनरी से निर्दिष्ट इंडेक्स के तत्व को हटाता है और उसे वापस करता है। remove() मेथड सूची से उसके मान द्वारा तत्व हटाता है और मान वापस नहीं करता।
pop() मेथड की समय जटिलता क्या है?⌄
pop() मेथड की डिफ़ॉल्ट समय जटिलता O(1) होती है, जो स्थिर और कुशल है।
क्या Python में pop() मेथड को सूचियों और डिक्शनरीज़ के अलावा अन्य डेटा संरचनाओं पर भी लागू किया जा सकता है?⌄
हाँ, Python में pop() मेथड को sets और bytearrays पर भी लागू किया जा सकता है। sets के लिए, set.pop() एक मनमाना तत्व हटाता है और उसे लौटाता है, क्योंकि sets अन-अनुक्रमित (unordered) होते हैं। bytearrays के लिए, bytearray.pop(index) निर्दिष्ट इंडेक्स पर तत्व को हटाता है और वापस करता है, जैसा कि सूचियों के साथ काम करता है।
अपने प्रोग्रामिंग कौशल को बेहतर बनाएं। कोड को अनुकूलित करना, फ़ंक्शन और परीक्षण लिखना, और सर्वोत्तम-अभ्यास सॉफ़्टवेयर इंजीनियरिंग तकनीकों का उपयोग करना सीखें।
Python में
pop()मेथड डेटा मैनिपुलेशन में एक महत्वपूर्ण फ़ंक्शन है, जिसका उपयोग किसी सूची या डिक्शनरी से निर्दिष्ट तत्व को हटाने और उसे वापस लौटाने के लिए किया जाता है। Python प्रोग्रामरpop()मेथड को पसंद करते हैं क्योंकि यह सूचियों और डिक्शनरीज़ जैसी डेटा संरचनाओं में बदलाव करने का विशेष रूप से सरल तरीका है।विस्तार में जाने से पहले, मैं आपको DataCamp का Introduction to Python कोर्स करने की अत्यधिक सलाह देता/देती हूँ ताकि आप Python भाषा की बुनियादी बातें सीख सकें। Python Cheat Sheet for Beginners भी Python की सिंटैक्स और अलग-अलग फ़ंक्शनों को समझने और संदर्भ के लिए मददगार है।
त्वरित उत्तर: Python में pop() मेथड का उपयोग कैसे करें
pop()मेथड का उपयोग सूचियों और डिक्शनरीज़ में विशिष्ट आइटम हटाने और उसका मान वापस करने के लिए किया जाता है। मैं दोनों के लिए एक त्वरित उदाहरण दिखाऊँगा/दिखाऊँगी। पहला उदाहरण दिखाता है किpop()मेथड का उपयोग करके सूची से कोई आइटम कैसे हटाएँ। निम्न कोड5प्रिंट करता है।अगला उदाहरण दिखाता है कि
pop()मेथड का उपयोग करके डिक्शनरी से कोई विशिष्ट कुंजी (key) कैसे हटाएँ। निम्न कोड3प्रिंट करता है।सूचियों के साथ pop() का उपयोग
pop()मेथड का उपयोग सूची से निर्दिष्ट तत्व को हटाने और वापस लौटाने के लिए किया जाता है। सूचियों के साथpop()मेथड की सिंटैक्स नीचे दिखाई गई है।जब आप सूचियों के साथ
pop()मेथड का उपयोग करते हैं, तो यह एक वैकल्पिक पैरामीटर ले सकता है जिससे हटाए जाने वाले इंडेक्स को निर्दिष्ट किया जा सके। यदि कोई पैरामीटर प्रदान नहीं किया जाता है, तोpop()मेथड सूची के अंतिम तत्व को हटाता है और उसे वापस करता है।यदि आप इंडेक्स को स्पष्ट रूप से निर्दिष्ट करना चुनते हैं और इसमें गलती होती है, तो सीमा से बाहर इंडेक्स होने पर
IndexErrorउठेगा। आइए नीचे सूचियों के साथpop()मेथड के अलग-अलग उपयोग मामलों को देखें।इंडेक्स द्वारा तत्व हटाने के लिए pop() का उपयोग
आप
pop()मेथड में तर्क (argument) के रूप में धनात्मक या ऋणात्मक इंडेक्स का उपयोग करके सूची से हटाए जाने वाले तत्व को निर्दिष्ट कर सकते हैं। Python में धनात्मक इंडेक्स सूची की शुरुआत में 0 से शुरू होते हैं। ऋणात्मक इंडेक्स सूची के अंत से -1 से शुरू होते हैं।निम्न उदाहरण सूची से तत्व हटाने के ये तीन तरीके दिखाते हैं। हर मामले में, कोड का आउटपुट
5प्रिंट करेगा।इटरेट करते समय सूची से आइटम हटाने के लिए pop() का उपयोग
आप
pop()मेथड को एक लूप में उपयोग करके हर बार अंतिम आइटम हटाते हुए सूची को खाली होने तक इटरेट कर सकते हैं। नीचे दिया गया उदाहरण दिखाता है कि लूप्स मेंpop()मेथड कैसे उपयोग करें। यह कोडList is now emptyप्रिंट करेगा।यह तकनीक कई परिदृश्यों में सहायक हो सकती है। मान लीजिए, उदाहरण के लिए, आपके पास कार्यों की एक सूची है जिसे एक-एक करके निपटाना है।
pop()का उपयोग करके, आप हर कार्य को पूरा होने पर हटा सकते हैं, जिससे आपकी सूची केवल बचे हुए कार्यों पर केंद्रित रहती है।नैस्टेड सूचियों के साथ pop() का उपयोग
आप नैस्टेड सूचियों से तत्व हटाने के लिए
pop()मेथड का उपयोग कर सकते हैं। यह मेथड नैस्टेड सूची में से निर्दिष्ट सूची को हटाता है और उसे वापस लौटाता है। निम्न कोड[7, 8, 9]प्रिंट करेगा।यदि आप आंतरिक सूची से कोई विशिष्ट तत्व हटाना चाहते हैं, तो पहले नैस्टेड सूची में उस सूची का इंडेक्स निर्दिष्ट करें। नीचे दिया गया कोड
9प्रिंट करता है, जो दूसरे इंडेक्स पर सूची का अंतिम तत्व है।pop() इंडेक्स आउट ऑफ रेंज को हैंडल करना
जब आप किसी सूची से ऐसा तत्व हटाने की कोशिश करते हैं जिसका इंडेक्स उस सूची की सीमा से बाहर है, तो
IndexErrorउठता है। इस त्रुटि से बचने के लिए, पहले सूची की लंबाई जाँचना और फिर उपयुक्त इंडेक्स देना महत्वपूर्ण है। आप त्रुटि पकड़ने के लिए try-except ब्लॉक का भी उपयोग कर सकते हैं। नीचे दिया गया कोड दोनों मामलों मेंIndex out of rangeप्रिंट करेगा।डिक्शनरीज़ के साथ pop() का उपयोग
pop()मेथड का उपयोग डिक्शनरीज़ में किसी निर्दिष्ट कुंजी को हटाने और उसका मान वापस लौटाने के लिए किया जाता है। डिक्शनरीज़ के साथpop()मेथड की सिंटैक्स नीचे दिखाई गई है।हम देख सकते हैं कि डिक्शनरी के साथ उपयोग करने पर
pop()मेथड के लिए एक कुंजी को पैरामीटर के रूप में देना आवश्यक है।pop()मेथड निर्दिष्ट कुंजी से जुड़े मान को वापस करता है और उस कुंजी-मूल्य जोड़ी को डिक्शनरी से हटा देता है।आप एक वैकल्पिक डिफ़ॉल्ट मान भी प्रदान कर सकते हैं जो कुंजी न मिलने पर लौटाया जाए। यदि निर्दिष्ट कुंजी नहीं मिलती और कोई डिफ़ॉल्ट मान प्रदान नहीं किया गया है, तो
KeyErrorउठता है। यदि डिफ़ॉल्ट मान दिया गया है, तो वह डिफ़ॉल्ट मान लौटाया जाता है।Python डिक्शनरी डिफ़ॉल्ट मान
डिक्शनरीज़ के साथ
pop()मेथड का उपयोग करते समय, आप ऐसा डिफ़ॉल्ट मान दे सकते हैं जिसे कुंजी न मिलने पर लौटाया जाए। यह तरीका आमतौर परKeyErrorसे बचने के लिए उपयोग किया जाता है। नीचे दिया गया कोडNot Foundप्रिंट करता है क्योंकि कुंजीdसंग्रह में मौजूद नहीं है।नैस्टेड डिक्शनरीज़ के साथ pop() मेथड का उपयोग
सूचियों की तरह, आप नैस्टेड डिक्शनरीज़ में तत्व हटाने के लिए
pop()मेथड का उपयोग कर सकते हैं। नैस्टेड डिक्शनरीज़ वे होती हैं जिनमें डिक्शनरीज़ के अंदर डिक्शनरीज़ होती हैं। निम्न कोड{'x': 7, 'y': 8, 'z': 9}प्रिंट करेगा।आप नैस्टेड डिक्शनरीज़ में किसी विशिष्ट डिक्शनरी से उसकी कुंजी बताकर आंतरिक मान भी हटा सकते हैं। नीचे दिया गया कोड
2प्रिंट करता है।Python डिक्शनरी KeyError को हैंडल करना
KeyErrorको अधिक सहजता से हैंडल करने का एक और सामान्य तरीका है try-except ब्लॉक का उपयोग करके त्रुटि को पकड़ना। निम्न उदाहरण दिखाता है कि try-except तकनीक कोpop()मेथड के साथ कैसे उपयोग करें।आप
inकीवर्ड का उपयोग करके यह जाँच भी कर सकते हैं कि किसी डिक्शनरी में कोई विशिष्ट कुंजी मौजूद है या नहीं, हटाने से पहले। नीचे दिया गया कोड इस विधि का उपयोग करता है औरKey not found.लौटाता है।प्रदर्शन संबंधी विचार
इस खंड में, हम सूचियों और डिक्शनरीज़ के साथ
pop()मेथड का उपयोग करने के प्रदर्शन संबंधी निहितार्थों पर नज़र डालेंगे।सूची संचालन
सूचियों में
pop()ऑपरेशनों की समय जटिलता हटाए जाने वाले तत्व के इंडेक्स पर निर्भर करती है। जब आप बिना तर्क के या -1 इंडेक्स के साथpop()का उपयोग करके अंतिम तत्व हटाते हैं, तो यह O(1) समय में काम करता है क्योंकि यह सूची के केवल अंतिम तत्व को हटाता है और अन्य तत्वों को नहीं बदलता।जब हम पहले या किसी अन्य तत्व को हटाने के लिए
pop()मेथड का उपयोग करते हैं, तो यह O(n) समय में काम करता है क्योंकि इसमें एक तत्व को हटाना और अन्य तत्वों को नए इंडेक्स क्रम में शिफ्ट करना शामिल होता है। Python में समय जटिलता पर अधिक जानने के लिए हमारा Analyzing Complexity of Code through Python ट्यूटोरियल देखें।डिक्शनरी संचालन
डिक्शनरीज़ में
pop()मेथड अंतर्निहित हैश टेबल के कार्यान्वयन के कारण अत्यंत कुशल है। इस परिदृश्य में, डिक्शनरी के साथpop()मेथड सामान्यतः O(1) ऑपरेशन होता है।यह समय जटिलता इसलिए है क्योंकि डिक्शनरी कुंजियों को हैश टेबल में संग्रहीत करती है और इंसर्शन, डिलेशन और लुकअप के लिए कुछ समय लगता है। साथ ही, ध्यान दें कि
pop()मेथड का उपयोग करते समय आपको हमेशा हटाई जाने वाली कुंजी निर्दिष्ट करनी होती है। हैश टेबल्स के बारे में और जानने के लिए हमारा A Guide to Python Hashmaps ट्यूटोरियल देखें।Python के pop() मेथड के विकल्प
हालाँकि
pop()मेथड सूचियों और डिक्शनरीज़ से तत्व हटाने में प्रभावी है, कुछ विकल्प भी मौजूद हैं।del कीवर्ड का उपयोग
delकीवर्ड का उपयोग सूची से किसी आइटम को उसके इंडेक्स द्वारा हटाने के लिए किया जाता है।delकीवर्ड का उपयोग डिक्शनरीज़ से निर्दिष्ट कुंजी-मूल्य जोड़े हटाने के लिए भी किया जा सकता है। ध्यान दें किdelकीवर्ड हटाए गए तत्व को वापस नहीं करता, जबकिpop()मेथड करता है।नीचे दिए गए उदाहरण दिखाते हैं कि सूची और डिक्शनरी से तत्व हटाने के लिए
delकीवर्ड का उपयोग कैसे करें। दूसरे इंडेक्स पर स्थित तत्व हटाने के बाद, निम्न कोड नई सूची[1, 2, 4, 5]प्रिंट करता है।निम्न कोड
{'a': 1, 'c': 3}प्रिंट करेगा।remove() मेथड का उपयोग
remove()मेथड केवल सूची पर लागू होता है, जब आप इंडेक्स के बजाय किसी तत्व को उसके सटीक मान द्वारा हटाना चाहते हैं। यदि सूची में वह तत्व एक से अधिक बार आता है, तो यह मेथड उसकी पहली उपस्थिति को हटाता है। नीचे दिया गया कोड[1, 3, 4, 5]प्रिंट करता है।निष्कर्ष
pop()मेथड Python में विशेष रूप से सरल और बहुमुखी फीचर है, जिसका उपयोग सूचियों और डिक्शनरीज़ से तत्व हटाने के लिए किया जाता है, और जिसके प्रोग्रामिंग में कई व्यावहारिक उपयोग हैं। यहpop()मेथड सूचियों और डिक्शनरीज़ को हैंडल करते समय खास तौर पर महत्वपूर्ण है क्योंकि यह हटाए गए तत्व को वापस करता है—जो अक्सर वही व्यवहार होता है जिसकी आपको तलाश होती है।एक डेटा विश्लेषक के रूप में, मैं DataCamp के Python Fundamentals और Python Programming स्किल ट्रैक्स देखने की सलाह देता/देती हूँ ताकि आप डेटा विश्लेषण के लिए अपनी Python कौशल को बेहतर बना सकें। मैं आपको हमारा Data Analyst with Python करियर ट्रैक भी देखने के लिए प्रोत्साहित करता/करती हूँ ताकि आप व्यावहारिक, नौकरी से संबंधित कौशल बनाते रहें।