مكتبة datetime هي واحدة من أقوى المكتبات المدمجة في بايثون للتعامل مع الوقت والتواريخ. في هذا الدرس سنتعرف على كيفية استخدامها.
🧩 أولًا: استيراد المكتبة
import datetime
⏰ الحصول على التاريخ والوقت الحالي
import datetime
الآن = datetime.datetime.now()
print("الوقت الحالي:", الآن)
✳️ now() تُرجع التاريخ والوقت الحالي بدقة إلى الثانية.
📅 استخراج أجزاء من التاريخ
اليوم = datetime.datetime.now()
print("السنة:", اليوم.year)
print("الشهر:", اليوم.month)
print("اليوم:", اليوم.day)
print("الساعة:", اليوم.hour)
print("الدقيقة:", اليوم.minute)
print("الثانية:", اليوم.second)
📆 إنشاء تاريخ مخصص
تاريخ_معين = datetime.datetime(2025, 6, 1)
print("التاريخ الذي حددته:", تاريخ_معين)
🕒 التنسيق (Formatting) باستخدام strftime
الآن = datetime.datetime.now()
print(الآن.strftime("%Y-%m-%d %H:%M:%S")) # 2025-06-05 14:22:13
print(الآن.strftime("%A")) # اسم اليوم مثل Monday
print(الآن.strftime("%B")) # اسم الشهر مثل June
بعض الرموز المفيدة: | الرمز | المعنى | |-------|---------------------| | %Y | السنة كاملة | | %m | رقم الشهر (01-12) | | %d | اليوم من الشهر | | %H | الساعة (24 ساعة) | | %M | الدقيقة | | %S | الثانية | | %A | اسم اليوم | | %B | اسم الشهر |
🔄 العمليات على التواريخ باستخدام timedelta
from datetime import datetime, timedelta
اليوم = datetime.now()
بعد_أسبوع = اليوم + timedelta(days=7)
قبل_يومين = اليوم - timedelta(days=2)
print("بعد أسبوع:", بعد_أسبوع)
print("قبل يومين:", قبل_يومين)
✅ التمرين: برنامج تذكير بالمواعيد
اكتب برنامجًا بلغة Python يقوم بالآتي:
- يطلب من المستخدم إدخال عدد الأيام المتبقية على مناسبة مهمة (مثل: عيد ميلاده أو امتحان).
- يحسب تاريخ هذه المناسبة بناءً على التاريخ الحالي.
- يعرض:
- تاريخ المناسبة.
- كم يوم تبقى عليها.
💡 الحل:
from datetime import datetime, timedelta
# 1. الحصول على عدد الأيام من المستخدم
عدد_الأيام = int(input("أدخل عدد الأيام المتبقية على المناسبة المهمة: "))
# 2. الحصول على التاريخ الحالي
اليوم = datetime.now()
# 3. حساب تاريخ المناسبة
تاريخ_المناسبة = اليوم + timedelta(days=عدد_الأيام)
# 4. طباعة النتائج
print("\n📅 تاريخ المناسبة:", تاريخ_المناسبة.strftime("%Y-%m-%d"))
print("⏳ المتبقي على المناسبة:", (تاريخ_المناسبة - اليوم).days, "يومًا")
🧪 مثال على التنفيذ:
أدخل عدد الأيام المتبقية على المناسبة المهمة: 15
📅 تاريخ المناسبة: 2025-06-20
⏳ المتبقي على المناسبة: 15 يومًا

