⊗pyPmExcCt 75 of 129 menu

გამონაკლისების დაჭერა Python-ში

Python-ს სხვა პროგრამირების ენებთან შედარებით ძალიან ბევრი სიტუაცია აქვს, რომელიც იწვევს გამონაკლისებს.

მოდით განვიხილოთ ისინი უფრო დეტალურად. დავუშვათ გვაქვს სია:

lst = [1, 2, 3]

მივმართოთ სიის არარსებულ ელემენტს:

print(lts[4])

კოდის შესრულების შემდეგ გამოიტანს შეცდომას (გამონაკლისს):

IndexError: list index out of range

თუ კი ჩვენ გვსურს ვიმუშაოთ გამონაკლისის გამოტანის გარეშე, ის უნდა დავიჭიროთ try-except კონსტრუქციის გამოყენებით. მას აქვს შემდეგი სინტაქსი:

try: # კოდი, რომელიც იწვევს გამონაკლისს except: # შეცდომის დამუშავება

try ბლოკში უნდა განთავსდეს კოდი, რომელიც შეიძლება შეიცავდეს გამონაკლისს. თუ ამ კოდის შესრულებისას წარმოიქმნება გამონაკლისური სიტუაცია, მაშინ კოდის შესრულება არ შეჩერდება, არამედ გადავა except ბლოკის კოდში. ამ ბლოკში უნდა იყოს აღწერილი შეტყობინება, რომელიც მაქსიმალურად ზუსტად აღწერს წარმოშობილი შეცდომის არსს.

თუ კი try ბლოკის შესრულებისას არანაირი გამონაკლისური სიტუაცია არ მოხდა, მაშინ სასარგებლო კოდი უბრალოდ შესრულდება, ხოლო კოდი except ბლოკიდან - არა.

მოდით დავიჭიროთ ჩვენი გამონაკლისი სიის არარსებულ ელემენტზე მიმართვისას. ამისათვის try ბლოკში ჩავსვათ კოდი პოტენციური შეცდომით. ხოლო except ბლოკში მივუთითოთ კონსოლში შეტყობინების გამოტანა 'error: elem is not exist':

lst = [1, 2, 3] try: print(lst[4]) except: print('error: elem is not exist')

კოდის შესრულების შემდეგ გამოიტანს:

'error: elem is not exist'

try-except კონსტრუქციის შესწავლის შემდეგ თქვენს მიერ დაწერილი კოდის სტილი უნდა შეიცვალოს. ახლა ყველა ის ადგილი, სადაც შეიძლება წარმოიქმნას გამონაკლისური სიტუაცია, საჭიროა შეფუთოთ try-ში, ხოლო except ბლოკში აღწეროთ რეაქცია ამ გამონაკლისზე.

Ჰკითხეთ მომხმარებელს ორი რიცხვი. გაყავით ერთი მეორეზე. დაჭირეთ ნულზე გაყოფის გამონაკლისური სიტუაცია.

Ჰკითხეთ მომხმარებელს რიცხვი. იპოვეთ ამ რიცხვის კვადრატული ფესვი. დაჭირეთ უარყოფითი რიცხვიდან ფესვის ამოღების გამონაკლისურ სიტუაციას.

მოცემულია სია. Ჰკითხეთ მომხმარებელს მთელი რიცხვი. მიიღეთ სიის ელემენტი, რომლის ნომერიც მომხმარებელმა შეიყვანა. დაჭირეთ გამონაკლისურ სიტუაციას, რომელიც მოხდება, თუ მომხმარებელმა შეიყვანა რიცხვი სიის დიაპაზონის გარეთ.

მოცემულია შემდეგი კოდი:

num = '5' res = num + 2 print(res)

რა არასწორია ამ კოდში? გამასწორეთ მისი ნაკლოვანებები.

მოცემულია შემდეგი კოდი:

lst = [1, 2, 3, 4] def getElem(iter): print(iter[4]) getElem(lst)

რა არასწორია ამ კოდში? გამასწორეთ მისი ნაკლოვანებები.

ქართული
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა