پرسش

چطور می‌توانم یک Exception رو در پایتون پرینت کنم؟

How do I print an exception in Python?

چه راه‌هایی برای چاپ کردن Exception توی پایتون وجود داره؟

1403/06/03
پاسخ
رضا دولتی عاشق برنامه نویسی و هوش مصنوعی!
بیوگرافی رضا دولتی

برای اینکه بتونی یه Exception رو در پایتون پرینت کنی، چند روش وجود داره که هر کدوم بسته به نیازت می‌تونی استفاده کنی. چندتا از رایج‌ترین روش‌ها رو برات توضیح میدم:

  1. استفاده از print به همراه str(exception):

این روش خیلی ساده است و فقط Exception رو به عنوان یه رشته پرینت می‌کنه.

try:
    # Your code here
except Exception as e:
    print(str(e))  # Prints the exception as a string
  1. استفاده از print به همراه repr(exception):

این روش مشابه روش قبلیه ولی یه خروجی کمی متفاوت داره. repr یک نمایش رسمی‌تر از Exception می‌ده.

try:
    # Your code here
except Exception as e:
    print(repr(e))  # Prints the formal representation of the exception
  1. استفاده از traceback برای پرینت کردن کل استک ترس:

اگه می‌خوای جزئیات کامل‌تری از خطا بگیری (مثل اینکه توی کد دقیقاً کجا خطا رخ داده)، می‌تونی از ماژول traceback استفاده کنی.

import traceback
try:
    # Your code here
except Exception as e:
    print(traceback.format_exc())  # Prints the full traceback of the exception

این روش دقیقاً تمام اطلاعات مربوط به Exception رو با تمام جزئیات چاپ می‌کنه که برای دیباگ کردن خیلی کاربردیه.

  1. استفاده از logging برای پرینت و لاگ کردن Exception:

اگه بخوای Exception رو هم پرینت کنی و هم توی یه فایل لاگ کنی، ماژول logging می‌تونه خیلی بهت کمک کنه.

import logging
try:
    # Your code here
except Exception as e:
    logging.error("An error occurred", exc_info=True)  # Logs the exception with a message

این روش هم Exception رو لاگ می‌کنه و هم اطلاعات کاملی از خطا رو بهت می‌ده.

پاسخ: 1403/06/03
آخرین آپدیت: 1403/07/30