التابع datetime.datetime.timetuple()
في بايثون
يعيد التابع الصنف time.struct_time
كما تعيده الدالة time.localtime()
.
البنية العامة
datetime.timetuple()
القيمة المعادة
يعيد التابع الصنف time.struct_time
. وهو عبارة عن كائن يتضمّن صفًّا مسمّىً named tuple. ويمكن الوصول إلى القيم عبر الفهرس index أو عبر اسم الخاصية، وكما هو موضح في الجدول التالي:
الفهرس | اسم الخاصية | الوصف |
---|---|---|
0
|
tm_year
|
السنة |
1
|
tm_mon
|
الشهر |
2
|
tm_mday
|
اليوم |
3
|
tm_hour
|
الساعة |
4
|
tm_min
|
الدقيقة |
5
|
tm_sec
|
الثانية |
6
|
tm_wday
|
عدد اليوم في الأسبوع |
7
|
tm_yday
|
عدد اليوم في السنة |
8
|
tm_isdst
|
التوقيت الصيفي |
هذا التابع مكافئ للصنف time.struct_time((d.year, d.month, d.day, d.hour, d.minute, d.second, d.weekday(), yday, dst))
حيث yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1
وهو عدد اليوم في السنة الحالية بدءًا من اليوم الأول فيها.
يجري تعيين الراية tm_isdst
في النتيجة المعادة من استدعاء التابع بالاعتماد على التابع dst()
: إن كانت قيمة tzinfo
هي None
أو إن أعاد التابع dst()
القيمة None
، فإنّ الراية tm_isdst
تأخذ القيمة -1
، أما إذا أعاد التابع dst()
قيمة غير صفرية، فإنّ الراية tm_isdst
تأخذ القيمة 1
، وإلّا تأخذ هذه الراية القيمة 0
.
أمثلة
يبين المثال التالي آلية عمل التابع:
>>> from datetime import date
>>> d = date(2018, 6, 26)
>>> t = d.timetuple()
>>> for i in t:
... print(i)
...
2018 # السنة
6 # الشهر
26 # اليوم
0 # الساعة
0 # الدقيقة
0 # الثانية
1 # اسم اليوم (0 = الاثنين)
177 # اليوم 177 في السنة
-1 # DST الراية
>>> t.tm_year
2018
>>> t.tm_yday
177
>>> t[2]
26
>>> t[8]
-1
انظر أيضًا
- التابع
datetime.utctimetuple()
: يعيد التابع الصنفtime.struct_time
كما تعيده الدالةtime.localtime()
ولكن حسب التوقيت العالمي المنسّق.
مصادر
قسم datetime Objects في صفحة Basic date and time types في توثيق بايثون الرسمي.