किसी भी प्रोग्रामिंग भाषा की तरह, पायथन के पास नियमों का अपना सेट है। यदि इन नियमों का पालन नहीं किया जाता है, तो कोड दुभाषिया के लिए समझ से बाहर हो जाता है, जिससे सिंटैक्स त्रुटियां होती हैं। ये त्रुटियां सामान्य मुद्दे हैं जो नौसिखिया और अनुभवी प्रोग्रामर दोनों का सामना करते हैं। लेख पायथन में सबसे लगातार त्रुटियों पर चर्चा करता है और प्रोग्रामिंग प्रक्रिया के दौरान उन्हें सही करने के तरीके प्रदान करता है।
जब एक सिंटैक्स त्रुटि होती है, तो पायथन एक त्रुटि संदेश प्रदान करता है जो समस्या को इंगित करता है। इस संदेश में आमतौर पर शामिल होता है:
सबसे आम पायथन गलतियों में से एक शुरुआती को कोष्ठक बंद करना भूल रहा है। यह विशेष रूप से फ़ंक्शन कॉल और नेस्टेड संरचनाओं में आम है।
उदाहरण :
print("Hello, World!"
पायथन त्रुटि संदेश:
फिक्स :
सुनिश्चित करें कि सभी कोष्ठक सही रूप से बंद हैं।
print("Hello, World!")
पायथन कोड के ब्लॉकों को परिभाषित करने के लिए इंडेंटेशन पर निर्भर करता है। गलत इंडेंटेशन से सिंटैक्स त्रुटियां हो सकती हैं।
उदाहरण :
def greet():
print("Hello, World!")
अजगर त्रुटि संदेश :
फिक्स :
कोड ब्लॉक को ठीक से इंडेंट करें।
def greet():
print("Hello, World!")
सूचियों या शब्दकोशों में तत्वों के बीच अल्पविराम को शामिल करना भूल जाना एक और लगातार गलती है।
उदाहरण :
fruits = {"type": "sweert" "name": "orange"}
अजगर त्रुटि संदेश:
फिक्स :
"स्वीर्ट" और "नाम" के बीच लापता अल्पविराम जोड़ें।
fruits = {"type": "sweert", "name": "orange"}
पायथन आरक्षित कीवर्ड का उपयोग अनुचित तरीके से सिंटैक्स त्रुटियों में भी हो सकता है। कीवर्ड आरक्षित शब्द हैं जिनके विशेष अर्थ हैं।
उदाहरण :
class = "Beginner"
अजगर त्रुटि संदेश:
हल करना:
एक अलग नाम चुनें जो एक आरक्षित कीवर्ड न हो।
level = "Beginner"
परिवर्तनीय नामों को विशिष्ट नियमों का पालन करना चाहिए। अवैध चर नामों का उपयोग करना, जैसे कि एक संख्या के साथ शुरू करना या रिक्त स्थान युक्त, सिंटैक्स त्रुटियों में परिणाम।
उदाहरण :
2name = "John"
पायथन त्रुटि संदेश:
हल करना:
एक मान्य चर नाम का उपयोग करें।
name2 = "John"
स्ट्रिंग्स को मिलान उद्धरण चिह्नों में संलग्न किया जाना चाहिए। एक सिंटैक्स त्रुटि में एक स्ट्रिंग परिणाम को बंद करने के लिए भूल जाना।
उदाहरण :
message = "Hello, World!
अजगर त्रुटि संदेश :
फिक्स :
सुनिश्चित करें कि स्ट्रिंग एक ही प्रकार के उद्धरण चिह्न के साथ बंद है।
message = "Hello, World!"
एक बृहदान्त्र को जोड़ने के लिए भूल जाना (:) यौगिक बयानों के अंत में जैसे कि, के लिए, जबकि, और डीईएफ सिंटैक्स त्रुटियों को जन्म दे सकता है।
उदाहरण :
def greet()
print("Hello, World!")
अजगर त्रुटि संदेश :
फिक्स :
यौगिक कथन के अंत में एक बृहदान्त्र जोड़ें।
def greet():
print("Hello, World!")
ऑपरेटरों का गलत तरीके से उपयोग करने से सिंटैक्स त्रुटियां हो सकती हैं। इसमें असाइनमेंट ऑपरेटर और तुलना ऑपरेटर शामिल हैं।
उदाहरण :
if x = 10:
print("x is 10")
अजगर त्रुटि संदेश :
फिक्स :
सही तुलना ऑपरेटर का उपयोग करें।
if x == 10:
print("x is 10")
आइए एक साधारण वेब स्क्रैपिंग स्क्रिप्ट पर विचार करें जो एक सिंटैक्स त्रुटि का सामना करती है और पायथन के बिल्ट-इन डीबगर, पीडीबी का उपयोग करके इसे कैसे डीबग करें।
मूल कोड:
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all("h1")
for title in titles
print(title.text)
पायथन त्रुटि संदेश:
हल करना:
लूप के लिए लापता बृहदान्त्र जोड़ें।
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all("h1")
for title in titles:
print(title.text)
डिबगर शुरू करने के लिए लूप से पहले निम्न पंक्ति जोड़ें।
import pdb; pdb.set_trace()
ब्रेकपॉइंट के साथ संशोधित कोड:
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all("h1")
import pdb; pdb.set_trace()
for title in titles:
print(title.text)
जब आप स्क्रिप्ट चलाते हैं, तो पीडीबी डीबगर ब्रेकपॉइंट पर शुरू होगा।
> /path/to/your/script.py(10)()
-> for title in titles:
(Pdb)
डिबगिंग कमांड:
उदाहरण सत्र:
(Pdb) n
> /path/to/your/script.py(11)()
-> print(title.text)
(Pdb) p titles
[<h1>Example Domain</h1>]
(Pdb) c
Example Domain
पीडीबी का उपयोग करके, आप अपने कोड के माध्यम से कदम रख सकते हैं, चर का निरीक्षण कर सकते हैं, और निष्पादन के प्रवाह को समझ सकते हैं, जिससे त्रुटियों को पहचानना और ठीक करना आसान हो सकता है।
जब प्रोसेसर आपके कोड को व्यापक रूप से समझने में असमर्थ होता है, तो व्याख्या त्रुटियां होती हैं, लेकिन रनटाइम त्रुटियां होती हैं क्योंकि आपका कोड चल रहा है। शून्य डिवीजन, एक सूची में स्कोप सरणी को छूने के साथ -साथ इस तरह की त्रुटियों के लिए अपरिभाषित चर खाते में भी।
उदाहरण :
numbers = [1, 2, 3]
print(numbers[3])
अजगर त्रुटि संदेश :
हल करना:
सुनिश्चित करें कि आप मान्य सूची सूचकांकों तक पहुँच रहे हैं।
print(numbers[2])
अपवाद हैंडलिंग आपके प्रोग्राम को त्रुटि होने पर भी जारी रखने की अनुमति देता है। अपवादों को पकड़ने और संभालने के लिए ट्राई-एक्सपेक्ट ब्लॉक का उपयोग करें।
उदाहरण:
try:
result = 10 / 0
except ZeroDivisionError:
print("You can't divide by zero!")
आम गलतियों पर विशेषज्ञता प्राप्त करना और पायथन सिंटैक्स में त्रुटियों को सुधारना किसी भी पायथन डेवलपर के लिए बहुत आवश्यक है। पायथन त्रुटि संदेशों को पढ़ना और बाद के सुधारों के लिए आगे बढ़ना सुनिश्चित करता है कि कोई बेहतर कोड आसानी से लिखता है। सुझाव दिए गए उपकरणों और दिशानिर्देशों के लिए।
टिप्पणियाँ: 0