التابع 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 في توثيق بايثون الرسمي.