OSError ทำหน้าที่เป็นคลาสข้อผิดพลาดสำหรับโมดูล os และจะเพิ่มขึ้นเมื่อมีข้อผิดพลาดกลับมาจากฟังก์ชันเฉพาะของระบบปฏิบัติการ
เราสามารถเขียนโค้ดที่กำหนดใหม่ได้ดังนี้ เพื่อจัดการกับข้อยกเว้นและทราบประเภทของโค้ด
#foobar.py import os import sys try: for i in range(5): print i, os.ttyname(i) except Exception as e: print e print sys.exc_type
หากเราเรียกใช้สคริปต์นี้ที่เทอร์มินัล linux
$ python foobar.py
เราได้ผลลัพธ์ดังต่อไปนี้
ผลลัพธ์
0 /dev/pts/0 1 /dev/pts/0 2 /dev/pts/0 3 [Errno 9] Bad file descriptor <type 'exceptions.OSError'>