else
שיעור 4 מתוך 16 בקורס טיפול בחריגות ב-Python של Coddy.
- אפשר להשתמש בבלוק else אופציונלי עם פקודת try-except.
- הוא שימושי עבור קוד שחייב להתבצע אם בלוק try אינו מעלה חריגה.
דוגמה:
try:
a = 10
b = "hello"
result = a + b #קוד שעלול לגרום לחריגה
except TypeError:
print("Cannot do addition") #קוד לטיפול בחריגה
else:
print("Addition performed successfully") #קוד שיבוצע אם לא מתרחשת חריגה בבלוק tryבדוגמה שלמעלה נוצרת חריגה, והבקרה עוברת לבלוק except. במקרה זה, בלוק else לא יבוצע.
אם תגדירו b = 20, לא תתרחש חריגה ובלוק else יבוצע.
- חריגה --> בלוק except
- אין חריגה --> בלוק else
הערה: אחד מהחלקים except או else יבוצע.
אתגר
קליש לנו רשימה 'data' שמכילה 5 איברים. מיקום האינדקס הוא קלט לפונקציה fetch. הדפס את האיבר שנמצא במספר האינדקס הנתון. תיזרק השגיאה IndexError אם האינדקס מחוץ לטווח. הדפס "Incorrect Index Number" בעת IndexError בבלוק except. אם לא מתרחשת חריגה, הדפס את האיבר שאוחזר בבלוק else.
נסו בעצמכם
data = ["John","United States",22,True,98.5]
def fetch(idx):
#בלוק try כאן (fetch)
#בלוק except כאן (טיפול ב-IndexError)
#בלוק else כאן (הדפסת האיבר שנשלף)
כל השיעורים ביחידה טיפול בחריגות ב-Python
4התאמה אישית ושיטות עבודה מומלצות
התאמה אישית של Tracebacksתרגלו בעצמכם: קומפיילר Python אונליין