விதிவிலக்கு கையாளுதலுக்கான பைத்தானில் விதிவிலக்குகளை வீசுதல்

விதிவிலக்கு கையாளுதலுக்கான பைத்தானில் விதிவிலக்குகளை வீசுதல்
விதிவிலக்கு கையாளுதலுக்கான பைத்தானில் விதிவிலக்குகளை வீசுதல்

பைத்தானில் விதிவிலக்கு கையாளுதலைப் புரிந்துகொள்வது

பைத்தானில், விதிவிலக்குகள் என்பது ஒரு நிரலின் செயல்பாட்டின் போது ஏற்படக்கூடிய பிழைகள் மற்றும் விதிவிலக்கான நிகழ்வுகளைக் கையாள்வதற்கான சக்திவாய்ந்த கருவியாகும். விதிவிலக்குகளை கைமுறையாக உயர்த்துவதன் மூலம், டெவலப்பர்கள் குறிப்பிட்ட சிக்கல்களின் நிகழ்வை சமிக்ஞை செய்யலாம் மற்றும் அவர்களின் பயன்பாடுகளின் ஓட்டத்தை மிகவும் திறம்பட நிர்வகிக்கலாம்.

இந்த வழிகாட்டி பைத்தானில் கைமுறையாக விதிவிலக்குகளை உயர்த்தும் செயல்முறையை ஆராயும், உங்கள் குறியீட்டில் உள்ள பிழை கையாளும் பொறிமுறையை எவ்வாறு கட்டுப்படுத்துவது என்பதைப் புரிந்துகொள்ள உதவுகிறது. விதிவிலக்குகளின் சரியான பயன்பாடு உங்கள் பைதான் நிரல்களின் வலிமை மற்றும் வாசிப்புத்திறனை மேம்படுத்தும்.

கட்டளை விளக்கம்
raise பைத்தானில் கைமுறையாக விதிவிலக்கைத் தூண்டுவதற்குப் பயன்படுகிறது.
try செயல்படுத்தப்படும்போது பிழைகளைச் சோதிக்க குறியீட்டின் தொகுதியை வரையறுக்கிறது.
except ட்ரை பிளாக்கில் ஏற்படும் விதிவிலக்குகளைப் பிடித்து கையாளுகிறது.
else ட்ரை பிளாக்கில் விதிவிலக்குகள் எதுவும் எழுப்பப்படாவிட்டால், குறியீட்டின் தொகுதியை இயக்கும்.
ValueError ஒரு செயல்பாடு சரியான வகை ஆனால் பொருத்தமற்ற மதிப்பின் வாதத்தைப் பெறும் போது எழுப்பப்படும் உள்ளமைக்கப்பட்ட விதிவிலக்கு.
__init__ தனிப்பயன் விதிவிலக்குகளை வரையறுப்பதில் பொதுவாகப் பயன்படுத்தப்படும் வகுப்பின் பண்புக்கூறுகளைத் துவக்குகிறது.

விதிவிலக்கு கையாளுதல் ஸ்கிரிப்ட்களின் விரிவான விளக்கம்

முதல் ஸ்கிரிப்ட் உதாரணத்தில், செயல்பாடு 0 கைமுறையாக விதிவிலக்கை எவ்வாறு உயர்த்துவது என்பதை விளக்குகிறது raise கட்டளை. வகுத்தால் b பூஜ்ஜியம், செயல்பாடு a எழுப்புகிறது ValueError தனிப்பயன் செய்தியுடன் "பூஜ்ஜியத்தால் வகுக்க முடியாது!" இது செயல்பாட்டின் செயல்பாட்டை திறம்பட நிறுத்துகிறது மற்றும் கட்டுப்பாட்டை மாற்றுகிறது try தொகுதி, இது செயல்பாட்டை வாதங்களுடன் அழைக்க முயற்சிக்கிறது class NegativeNumberError(Exception): மற்றும் 0. விதிவிலக்கு உயர்த்தப்படும் போது, ​​கட்டுப்பாடு அனுப்பப்படும் except தொகுதி, இது பிடிக்கிறது ValueError மற்றும் பிழை செய்தியை அச்சிடுகிறது. விதிவிலக்கு எழுப்பப்படவில்லை என்றால், தி else தொகுதி செயல்படுத்தும், பிரிவின் முடிவை அச்சிடுகிறது.

இரண்டாவது ஸ்கிரிப்ட் தனிப்பயன் விதிவிலக்கு வகுப்பை உள்ளடக்கியது class NegativeNumberError(Exception): இது பைத்தானின் உள்ளமைக்கப்பட்டதிலிருந்து பெறுகிறது Exception வர்க்கம். தி __init__ முறை விதிவிலக்கை ஒரு மதிப்புடன் துவக்குகிறது, மற்றும் __str__ முறை பிழையின் சரம் பிரதிநிதித்துவத்தை வழங்குகிறது. செயல்பாடு def check_positive_number(n): உள்ளீடு என்றால் இந்த தனிப்பயன் விதிவிலக்கை எழுப்புகிறது n எதிர்மறையாக உள்ளது. இல் try தொகுதி, செயல்பாடு உடன் அழைக்கப்படுகிறது -5, இது எழுப்புகிறது NegativeNumberError மற்றும் கட்டுப்பாட்டை மாற்றுகிறது except தொகுதி, பிழை செய்தி அச்சிடப்பட்ட இடத்தில். விதிவிலக்கு ஏற்படவில்லை என்றால், தி else தொகுதி நேர்மறை எண் என்பதை உறுதிப்படுத்துகிறது.

பைத்தானில் விதிவிலக்குகளை எவ்வாறு உயர்த்துவது மற்றும் கையாள்வது

பைதான் நிரலாக்க எடுத்துக்காட்டு

# Function to demonstrate raising an exception
def divide_numbers(a, b):
    if b == 0:
        raise ValueError("Cannot divide by zero!")
    return a / b

# Main block to catch the exception
try:
    result = divide_numbers(10, 0)
except ValueError as e:
    print(f"Error: {e}")
else:
    print(f"Result: {result}")

பைதான் பயன்பாடுகளில் தனிப்பயன் விதிவிலக்கு கையாளுதல்

தனிப்பயன் விதிவிலக்கு வகுப்புகளுடன் பைதான்

# Defining a custom exception
class NegativeNumberError(Exception):
    def __init__(self, value):
        self.value = value
    def __str__(self):
        return f"Negative numbers are not allowed: {self.value}"

# Function to demonstrate raising a custom exception
def check_positive_number(n):
    if n < 0:
        raise NegativeNumberError(n)
    return n

# Main block to catch the custom exception
try:
    number = check_positive_number(-5)
except NegativeNumberError as e:
    print(f"Error: {e}")
else:
    print(f"Number is positive: {number}")

பைத்தானில் மேம்பட்ட விதிவிலக்கு கையாளுதல் நுட்பங்கள்

நிலையான மற்றும் தனிப்பயன் விதிவிலக்குகளை உயர்த்துதல் மற்றும் கையாளுதல் கூடுதலாக, சிக்கலான பயன்பாடுகளில் மிகவும் பயனுள்ளதாக இருக்கும் விதிவிலக்கு கையாளுதலுக்கான பல மேம்பட்ட நுட்பங்களை பைதான் வழங்குகிறது. அத்தகைய ஒரு நுட்பத்தை பயன்படுத்துகிறது finally தொகுதி. தி finally விதிவிலக்கு ஏற்பட்டுள்ளதா என்பதைப் பொருட்படுத்தாமல் குறிப்பிட்ட குறியீட்டை இயக்க பிளாக் டெவலப்பர்களை அனுமதிக்கிறது. கோப்புகளை மூடுவது அல்லது பிணைய இணைப்புகளை வெளியிடுவது போன்ற வள மேலாண்மை பணிகளுக்கு இது மிகவும் பயனுள்ளதாக இருக்கும். முக்கியமான க்ளீனப் குறியீடு எப்பொழுதும் செயல்படுத்தப்படுவதை உறுதி செய்வதன் மூலம், உங்கள் பயன்பாடுகளை மேலும் வலுவாக மாற்றலாம் மற்றும் ஆதார கசிவுகளைத் தடுக்கலாம்.

மற்றொரு மேம்பட்ட அம்சம், விதிவிலக்குகளைப் பயன்படுத்தி இணைக்கும் திறன் ஆகும் from முக்கிய வார்த்தை. நீங்கள் ஒரு விதிவிலக்கை எழுப்பும்போது, ​​அதற்குக் காரணமான மற்றொரு விதிவிலக்கை நீங்கள் வழங்கலாம், இது ஒரு தெளிவான காரணம் மற்றும் விளைவு சங்கிலியை உருவாக்குகிறது. பிழைகளின் வரிசையைப் பற்றிய கூடுதல் சூழலை இது வழங்குவதால், பிழைத்திருத்தத்திற்கு இது மிகவும் உதவியாக இருக்கும். கூடுதலாக, பைத்தானின் சூழல் மேலாளர்கள், உடன் பயன்படுத்தப்படுகின்றன with அறிக்கை, வளங்களை மிகவும் திறம்பட நிர்வகிக்க உதவும். சூழல் மேலாளர்கள் தானாக அமைவு மற்றும் டீர்டவுன் செயல்முறைகளைக் கையாளுகின்றனர், செயல்படுத்தும் போது பிழை ஏற்பட்டாலும் வளங்கள் சரியாக நிர்வகிக்கப்படுவதை உறுதி செய்கிறது.

பைத்தானில் விதிவிலக்கு கையாளுதல் பற்றிய பொதுவான கேள்விகள் மற்றும் பதில்கள்

  1. பைத்தானில் தனிப்பயன் விதிவிலக்கை எவ்வாறு உயர்த்துவது?
  2. ஒரு புதிய வகுப்பை வரையறுப்பதன் மூலம் தனிப்பயன் விதிவிலக்கை நீங்கள் பெறலாம் Exception மற்றும் பயன்படுத்தி raise அந்த வகுப்பின் உதாரணத்துடன் கூடிய அறிக்கை.
  3. இதன் நோக்கம் என்ன finally தடுப்பா?
  4. தி finally விதிவிலக்கு எழுப்பப்பட்டதா இல்லையா என்பதைப் பொருட்படுத்தாமல் இயங்கும் குறியீட்டை இயக்க தடை பயன்படுத்தப்படுகிறது, பெரும்பாலும் தூய்மைப்படுத்தும் செயல்களுக்குப் பயன்படுத்தப்படுகிறது.
  5. பைத்தானில் விதிவிலக்குகளை எவ்வாறு தொடர்வது?
  6. இதைப் பயன்படுத்தி விதிவிலக்குகளைத் தொடரலாம் from முக்கிய சொல், இது அசல் விதிவிலக்கின் சூழலைப் பாதுகாக்கும் போது புதிய விதிவிலக்கை உருவாக்க உங்களை அனுமதிக்கிறது.
  7. பைத்தானில் சூழல் மேலாளர் என்றால் என்ன?
  8. சூழல் மேலாளர் என்பது வளங்களை நிர்வகிப்பதற்கான ஒரு வழியாகும் with அமைப்பு மற்றும் கிழித்தல் குறியீடு சரியாக செயல்படுத்தப்படுவதை உறுதி செய்வதற்கான அறிக்கை.
  9. ஒரே தொகுதியில் பல விதிவிலக்குகளை எவ்வாறு கையாள்வது?
  10. நீங்கள் ஒரே நேரத்தில் பல விதிவிலக்குகளைக் கையாளலாம் except விதிவிலக்கு வகைகளைக் குறிப்பிடுவதன் மூலம் தடுக்கவும்.
  11. அனைத்து விதிவிலக்குகளையும் ஒரே தொகுதி மூலம் பிடிக்க முடியுமா?
  12. ஆம், வெறுமையைப் பயன்படுத்துவதன் மூலம் அனைத்து விதிவிலக்குகளையும் நீங்கள் பிடிக்கலாம் except: அறிக்கை, ஆனால் பொதுவாக இது பரிந்துரைக்கப்படுவதில்லை, ஏனெனில் இது பிழைகளை மறைக்க முடியும்.
  13. விதிவிலக்கு பிடிக்கப்படாவிட்டால் என்ன நடக்கும்?
  14. விதிவிலக்கு பிடிக்கப்படாவிட்டால், அது அழைப்பு அடுக்கை பரப்புகிறது மற்றும் இறுதியில் ஒரு ட்ரேஸ்பேக்கைக் காண்பிக்கும் நிரலை நிறுத்தும்.
  15. பைத்தானில் விதிவிலக்குகளை எவ்வாறு பதிவு செய்வது?
  16. நீங்கள் விதிவிலக்குகளைப் பயன்படுத்தி பதிவு செய்யலாம் logging தொகுதி, இது நெகிழ்வான பதிவு வசதிகளை வழங்குகிறது.
  17. என்ன வித்தியாசம் assert மற்றும் raise?
  18. assert நிலைமைகளைச் சரிபார்க்க பிழைத்திருத்த நோக்கங்களுக்காகப் பயன்படுத்தப்படுகிறது raise சாதாரண செயல்பாட்டின் போது விதிவிலக்குகளை கைமுறையாக தூக்கி எறிய பயன்படுகிறது.

பைத்தானில் விதிவிலக்கு கையாளுதல் பற்றிய இறுதி எண்ணங்கள்

பைத்தானில் கைமுறையாக விதிவிலக்குகளை உயர்த்துவது பிழைகளை நேர்த்தியாகக் கையாள்வதற்கும் வலுவான குறியீட்டை செயல்படுத்துவதை உறுதி செய்வதற்கும் ஒரு முக்கியமான திறமையாகும். உள்ளமைக்கப்பட்ட மற்றும் தனிப்பயன் விதிவிலக்குகளை மேம்படுத்துவதன் மூலம், டெவலப்பர்கள் மேலும் படிக்கக்கூடிய மற்றும் பராமரிக்கக்கூடிய நிரல்களை உருவாக்க முடியும். சங்கிலி விதிவிலக்குகள் மற்றும் சூழல் மேலாளர்களைப் பயன்படுத்துதல் போன்ற மேம்பட்ட நுட்பங்களைப் புரிந்துகொள்வது பிழை நிர்வாகத்தை மேலும் மேம்படுத்துகிறது. முறையான விதிவிலக்கு கையாளுதல் நிரல் நம்பகத்தன்மையை மேம்படுத்துவது மட்டுமல்லாமல் பிழைத்திருத்தம் மற்றும் வள மேலாண்மைக்கு உதவுகிறது.