כתיבה לשגיאה התקנית

Python:
כתיבה לשגיאה התקנית

איך לעשות:

באמצעות sys.stderr

המודול הפנימי sys של פייתון מאפשר כתיבה מפורשת ל-stderr. גישה זו פשוטה להודעות שגיאה או אבחונים פשוטים.

import sys

sys.stderr.write('Error: Something went wrong.\n')

דוגמת פלט (ל-stderr):

Error: Something went wrong.

באמצעות פונקציית print

פונקציית הprint של פייתון יכולה להפנות את הפלט שלה ל-stderr על ידי ציון הפרמטר file. שיטה זו שימושית לניצול הנוחות של print בזמן טיפול בהודעות שגיאה.

from sys import stderr

print('Error: Failure in module.', file=stderr)

דוגמת פלט (ל-stderr):

Error: Failure in module.

באמצעות המודול logging

לפתרון יותר מקיף, מודול הlogging של פייתון יכול להכווין הודעות ל-stderr ועוד הרבה יותר, כמו כתיבה לקובץ או התאמה אישית של פורמט ההודעה. שיטה זו הכי טובה ליישומים שדורשים רמות שונות של לוגינג, עיצוב הודעות, או יעדים.

import logging

logging.basicConfig(level=logging.WARNING)
logger = logging.getLogger(__name__)

logger.error('Error: Database connection failed.')

דוגמת פלט (ל-stderr):

ERROR:__main__:Error: Database connection failed.

ספריות צד שלישי: loguru

loguru היא ספריית צד שלישי פופולרית שמפשטת את הלוגינג ביישומי פייתון. היא מכווינת אוטומטית שגיאות ל-stderr, בין היתר.

לשימוש ב-loguru, ראשית התקן אותה דרך pip:

pip install loguru

לאחר מכן, הטמע אותה בסקריפט הפייתון כך:

from loguru import logger

logger.error('Error: Failed to open file.')

דוגמת פלט (ל-stderr):

2023-04-05 12:00:00.000 | ERROR    | __main__:<module>:6 - Error: Failed to open file.