SyntaxError เกิดขึ้นทุกครั้งที่ parser พบซอร์สโค้ดที่ไม่เข้าใจ อาจเป็นได้ในขณะนำเข้าโมดูล เรียกใช้ exec หรือเรียก eval() แอตทริบิวต์ของข้อยกเว้นสามารถใช้เพื่อค้นหาว่าส่วนใดของข้อความที่ป้อนทำให้เกิดข้อยกเว้น
เราเขียนโค้ดที่กำหนดใหม่เพื่อจัดการกับข้อยกเว้นและค้นหาประเภท
ตัวอย่าง
try:
print eval('six times seven')
except SyntaxError, err:
print 'Syntax error %s (%s-%s): %s' % \
(err.filename, err.lineno, err.offset, err.text)
print err ผลลัพธ์
C:/Users/TutorialsPoint1/~.py Syntax error <string> (1-9): six times seven invalid syntax (<string>, line 1)