Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

สัญลักษณ์ระบบ errno มาตรฐานใน Python

ทุกภาษาโปรแกรมมีกลไกจัดการข้อผิดพลาด (Error handling) ซึ่งบางข้อผิดพลาดถูกกำหนดไว้ล่วงหน้าในคอมไพเลอร์ ใน Python มีโมดูล errno ที่เก็บรหัสข้อผิดพลาดมาตรฐาน (Standard error codes) บทความนี้จะแสดงวิธีดูรหัสข้อผิดพลาดและตัวอย่างการใช้งาน

รหัสข้อผิดพลาด (Error Codes)

โปรแกรมด้านล่างแสดงรายการรหัสข้อผิดพลาดและข้อความอธิบาย โดยใช้โมดูล errno ร่วมกับ os

ตัวอย่าง

import errno
import os

for i in sorted(errno.errorcode):
    print(i, ':', os.strerror(i))

ผลลัพธ์ (บางส่วน)

1 : Operation not permitted
2 : No such file or directory
3 : No such process
4 : Interrupted function call
...
...

ตัวอย่างการใช้งานจริง

ตัวอย่างนี้แสดงการจับข้อผิดพลาด IOError เมื่อเปิดไฟล์ไม่เจอ (รหัส 2) และจัดการตามรหัสข้อผิดพลาด

ตัวอย่าง

try:
    file_name = open('Data.txt')  # 2 คือ 'No such file or directory'
except IOError as e:
    if e.errno == 2:
        print(e.strerror)
        print("File to be printed not found")
        # handle exception
    elif e.errno == 9:
        print(e.strerror)
        print("File will not print")

ผลลัพธ์

No such file or directory
File to be printed not found

การใช้ errno ช่วยให้เราจัดการข้อผิดพลาดได้เฉพาะเจาะจงและเขียนโค้ดที่ทนทาน (Robust) มากขึ้น