ក្រៅពី exception ដែលជា instance នៃថ្នាក់មានស្រាប់មួយចំនួនដូចខាងលើនេះ យើងអាចបង្កើតថ្នាក់នៃ exception របសយើងផ្ទាល់ ដើម្បីបង្កើត exception ផ្ទាល់ខ្លួនរបស់យើងក្នុងករណីចាំបាច់ទាំងឡាយ។
យ៉ាងណាម៉ិញ នៅក្នុងភាសា Python ថ្នាក់នៃ exception ក៏ដូចជាថ្នាក់ធម្មតាឯទៀតៗដែរ ដូចនេះ ការបង្កើតថ្នាក់នៃ exception គ្មានការខុសប្លែកអ្វីពីការបង្កើតថ្នាក់ធម្មតាដទៃទៀតឡើយ។ ពិនិត្យកម្មវិធីខាងក្រោមនេះ៖
class MyExceptionError(Exception): def __str__(self): return 'MyExceptionError occurred.' try: raise MyExceptionError() except MyExceptionError as error: print(error)
MyExceptionError occurred.
ដូចនេះ យើងសង្កេតឃើញថា ការបង្កើតថ្នាក់ exception ថ្មីៗទៀត ទាមទារអោយមានការបន្តថ្នាក់ចេញពីថ្នាក់មានស្រាប់ Exception ។
លើសពីនេះទៀត នៅមានលក្ខណៈពិសេសមួយទៀត នៅក្នុងការបង្កើតថ្នាក់នៃ exception ។ លក្ខណៈពិសេសនោះ គឺថាតាមរយៈ superclass យើងអាចទទួលយក exception របស់ subclass បាន។ ពិនិត្យកម្មវិធីខាងក្រោមនេះ៖
class MyExceptionError(Exception): def __str__(self): return 'MyExceptionError occurred.' try: raise MyExceptionError() except Exception as error: print(error)
MyExceptionError occurred.