خاصية datetime في لغة بايثون هي وحدة (module) توفر لك الأدوات اللازمة للتعامل مع التاريخ والوقت. تُعتبر هذه الوحدة قوية ومرنة، وتسمح لك بإجراء عمليات متنوعة مثل:

  • إنشاء كائنات تاريخ ووقت: يمكنك إنشاء كائنات تمثل تاريخًا محددًا، أو وقتًا محددًا، أو تاريخًا ووقتًا معًا.
  • التعامل مع المناطق الزمنية: يمكنك تحديد المنطقة الزمنية للكائنات التي تنشئها، مما يضمن دقة العمليات الحسابية والتنسيق.
  • إجراء العمليات الحسابية على التواريخ والأوقات: يمكنك حساب الفروق بين التواريخ، وإضافة أو طرح فترات زمنية، وغيرها.
  • تنسيق التاريخ والوقت: يمكنك عرض التاريخ والوقت بتنسيقات مختلفة، حسب الحاجة.

مكونات وحدة datetime الرئيسية:

تتكون وحدة datetime من عدة أصناف (classes) رئيسية، أهمها:

  • date: يمثل تاريخًا (سنة، شهر، يوم).
  • time: يمثل وقتًا (ساعة، دقيقة، ثانية، ميكروثانية).
  • datetime: يمثل تاريخًا ووقتًا معًا.
  • timedelta: يمثل فرقًا زمنيًا بين تاريخين أو وقتين.
  • timezone: يمثل منطقة زمنية.

أمثلة عملية:

  • إنشاء كائن date:
Python
import datetime

today = datetime.date.today()
print(today) # سيطبع تاريخ اليوم (مثال: 2024-07-27)

my_date = datetime.date(2025, 12, 25)
print(my_date) # سيطبع 2025-12-25
  • إنشاء كائن datetime:
Python
import datetime

now = datetime.datetime.now()
print(now) # سيطبع التاريخ والوقت الحاليين

my_datetime = datetime.datetime(2024, 7, 27, 10, 30, 0)
print(my_datetime) # سيطبع 2024-07-27 10:30:00
  • حساب الفرق بين تاريخين باستخدام timedelta:
Python
import datetime

date1 = datetime.date(2024, 7, 1)
date2 = datetime.date(2024, 7, 27)
delta = date2 - date1
print(delta.days) # سيطبع 26
  • تنسيق التاريخ والوقت باستخدام strftime():
Python
import datetime

now = datetime.datetime.now()
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_date) # سيطبع التاريخ والوقت بتنسيق محدد (مثال: 2024-07-27 15:45:30)

استخدامات شائعة:

تُستخدم وحدة datetime في العديد من التطبيقات، مثل:

  • تسجيل الأحداث (Logging): تسجيل وقت وقوع الأحداث في سجلات التطبيق.
  • التطبيقات المالية: حساب الفوائد وتواريخ الاستحقاق.
  • تطبيقات الويب: عرض التواريخ والأوقات بتنسيقات مناسبة للمستخدمين.
  • تحليل البيانات: التعامل مع البيانات التي تحتوي على معلومات زمنية.

باختصار، خاصية datetime في بايثون أداة قوية وضرورية للتعامل مع التاريخ والوقت في مختلف أنواع التطبيقات. توفر لك هذه الوحدة مرونة كبيرة ودقة عالية في إجراء العمليات المختلفة.