الصنف datetime.datetime()
في بايثون
كائن datetime
هو كائن مفرد يتضمّن جميع المعلومات المرتبطة بكائني التاريخ date
والوقت time
. وكما هو الحال مع هذين الكائنين، فإنّ كائن datetime
يفترض وجود التقويم الكريكوري والممتد في كلا الاتجاهين، ويفترض كذلك وجود 3600*24
ثانية بالضبط في كل يوم.
البنية العامة
class datetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)
المعاملات
المعاملات الثلاثة الأولى (year, month, day
) (السنة والشهر واليوم) تكون مطلوبة عند إنشاء صنف datetime
. يمكن للمعامل tzinfo
أن يأخذ القيمة None
أو نسخة من صنف tzinfo
فرعي. أما بقية المعاملات فيمكن أن تكون أعدادًا صحيحة ضمن النطاقات التالية:
MINYEAR <= year <= MAXYEAR
1 <= month <= 12
- عدد الأيام في السنة والشهر المحدّدين 1 <= day <=
0 <= hour < 24
0 <= minute < 60
0 <= second < 60
0 <= microsecond < 1000000
fold in [0, 1]
تطلق اللغة الخطأ ValueError
، إن تجاوزت قيمة المعامل المعطاة إحدى هذه النطاقات.
ملاحظة: أضيف المعامل fold
في الإصدار 3.6 من بايثون.
خصائص الصنف datetime
:
date.min
أقدم تاريخ ووقت يمكن تمثيلهما. datetime(MINYEAR, 1, 1, tzinfo=None)
.
date.max
أقصى تاريخ ووقت يمكن تمثيلهما datetime(MAXYEAR, 12, 31, 23, 59, 59, 999999, tzinfo=None)
.
date.resolution
أدنى فارق ممكن بين كائني datetime
غير متساويين timedelta(microseconds=1)
.
خصائص نسخة الصنف datetime
:
تمتلك النسخ التي تنشأ من الصنف date
الخصائص التالية:
date.year
السنة، وتمتد من MINYEAR
إلى MAXYEAR
ضمنيًّا.
date.month
الشهر، ويمتد من 1 إلى 12 ضمنيًّا.
date.day
اليوم، ويمتد من 1 إلى عدد الأيام ضمن الشهر المعطى في السنة المعطاة.
ملاحظة: هذه الخصائص للقراءة فقط.
time.hour
الساعة ضمن المدى 0
إلى 23
.
time.minute
الدقيقة ضمن المدى 0
إلى 59
.
time.second
الثانية ضمن المدى 0
إلى 59
.
جزء من الثانية، ضمن المدى 0
إلى 999999
.
time.tzinfo
الكائن المُمرّر كقيمة للمعامل tzinfo
في الدالة البانية للكائن time
، أو القيمة None
إن كانت قيمة المعامل tzinfo
الممرّرة هي None
.
time.fold
ضمن المدى [0, 1]
. ويستخدم للتمييز بين أوقات الانقضاء الحقيقية wall times خلال فترة زمنية مكرّرة. (تحدث الفترة الزمنية المكرّرة عند تأخير الساعات في التوقيت الصيفي، أو عند إنقاص مقدار إزاحة منطقة معيّنة عن التوقيت العالمي المنسّق UTC لأسباب سياسية).
تمثل القيمة 0
التوقيت المتقدّم بين التوقيتين، والقيمة 1
التوقيت المتأخر بين التوقيتين ضمن نفس تمثيل وقت الانقضاء الحقيقي.
ملاحظة: هذه الخاصية جديدة في الإصدار 3.6.
يوضّح المثال التالي خصائص نسخة الصنف time
:
>>> from datetime import datetime
>>> dt = datetime(2018, 7, 4, 12, 39, 33)
>>> dt
datetime.datetime(2018, 7, 4, 12, 39, 33)
>>> print(dt)
2018-07-04 12:39:33
>>> dt.year
2018
>>> dt.month
7
>>> dt.day
4
>>> dt.hour
12
>>> dt.minute
39
>>> dt.second
33
عمليات الكائن datetime
توابع الصنف datetime
التابع datetime.today()
التابع datetime.now()
التابع datetime.utcnow()
التابع datetime.fromtimestamp()
التابع datetime.utcfromtimestamp()
التابع datetime.fromordinal()
التابع datetime.combine()
التابع datetime.fromisoformat()
التابع datetime.strptime()
توابع نسخ الصنف datetime
التابع datetime.date()
التابع datetime.time()
التابع datetime.timetz()
التابع datetime.replace()
التابع datetime.astimezone()
التابع datetime.utcoffset()
التابع datetime.dst()
التابع datetime.tzname()
التابع datetime.timetuple()
التابع datetime.utctimetuple()
التابع datetime.toordinal()
التابع datetime.timepstamp()
التابع datetime.weekday()
التابع datetime.isoweekday()
التابع datetime.isocalendar()
التابع datetime.isoformat()
التابع datetime.__str__()
التابع datetime.ctime()
التابع datetime.format()
انظر أيضًا
مصادر
قسم datetime Objects في صفحة Basic date and time types في توثيق بايثون الرسمي.