Мазмунга өтүү

Каталарды иштетүү (try / except)

Программалоо Python Татаалдыгы 1/5

Сабактын башталышы

Каталарды иштетүү (try / except)

Бир нерсе туура эмес болгондо программаны кантип тынч сактоо керек

Негизги идея: Кээде программа өзү чече албаган көйгөйгө туш болот — мисалы, нөлгө бөлүү же "cat" деген сөздү санга айландыруу. Адатта программа кулап, токтоп калат. try / except менен сен ошол көйгөйдү кармап, программаны иштей берүүгө коё аласың, коркунучтуу катанын ордуна түшүнүктүү билдирүү көрсөтүп.
Сабактын аягында сен:
  • өзгөчө абал (иштөө учурундагы ката) деген эмне экенин түшүндүрө аласың,
  • катаны кармоо үчүн try / except блогун жаза аласың,
  • туура катаны, мисалы ValueError же ZeroDivisionError, кармай аласың,
  • программаны кулатпай, жумшак аяктата турган кыла аласың.

1. Өзгөчө абал деген эмне?

Өзгөчө абал (exception) — бул программа иштеп жатканда болгон ката. Python сен сураган нерсени кыла албай турганын байкап, токтоп, traceback деп аталган ката билдирүүсүн басып чыгарат.

Мына коргоосуз кичинекей программа. Эгер адам бүтүн сан эмес нерсени тератса, ал бузулат:

number = int(input("Enter a number: "))
print("Double is", number * 2)

Эгер адам сандын ордуна cat терсе, Python мындай traceback менен кулайт:

Traceback (most recent call last):
  File "program.py", line 1, in <module>
    number = int(input("Enter a number: "))
ValueError: invalid literal for int() with base 10: 'cat'

Акыркы сап, ValueError, — өзгөчө абалдын аты. Ар бир катанын аты бар. Атын билсең, аны кармай аласың.

2. Салыштыруу: коопсуздук тору

Абада бийикте жип үстүндө басып бараткан адамды элестет. Көбүнчө ал жипти тынч кечип өтөт. Бирок тайгаланып кетсе, коопсуздук тору аны кармап калат, ал жабыркабайт — оюн уланат.

try — бул жип үстүндө бараткан сен. except — астыңдагы тор. Эч нерсе болбосо, тор колдонулбайт. Бирок тайгаланып кетсең (ката болсо), тор сени кармап, программа жерге кулабай, иштей берет.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө