الفرق بين المراجعتين لصفحة: «Python/datetime/datetime/timetuple»

من موسوعة حسوب
لا ملخص تعديل
لا ملخص تعديل
سطر 5: سطر 5:


<syntaxhighlight lang="python3">
<syntaxhighlight lang="python3">
‎datetime.timetuple()
</syntaxhighlight>
</syntaxhighlight>


سطر 54: سطر 54:
هذا التابع مكافئ للصنف ‎<code>time.struct_time((d.year, d.month, d.day, d.hour, d.minute, d.second, d.weekday(), yday, dst))</code>‎ حيث ‎<code>yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1</code> وهو عدد اليوم في السنة الحالية بدءًا من اليوم الأول فيها.
هذا التابع مكافئ للصنف ‎<code>time.struct_time((d.year, d.month, d.day, d.hour, d.minute, d.second, d.weekday(), yday, dst))</code>‎ حيث ‎<code>yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1</code> وهو عدد اليوم في السنة الحالية بدءًا من اليوم الأول فيها.


يجري تعيين الراية tm_isdst في النتيجة المعادة من استدعاء التابع بالاعتماد على التابع dst()‎: إن كانت قيمة tzinfo هي None أو إن أعاد التابع dst()‎ القيمة None، فإنّ الراية tm_isdst تأخذ القيمة ‎-أما إذا أعاد التابع dst()‎ قيمة غير صفرية، فإنّ الراية tm_isdst تأخذ القيمة وإلّا تأخذ هذه الراية القيمة 0.
يجري تعيين الراية <code>tm_isdst</code> في النتيجة المعادة من استدعاء التابع بالاعتماد على التابع <code>[[Python/datetime/datetime/dst|dst()‎]]</code>: إن كانت قيمة <code>tzinfo</code> هي <code>None</code> أو إن أعاد التابع [[Python/datetime/datetime/dst|<code>dst()‎</code>]]‎ القيمة <code>None</code>، فإنّ الراية <code>tm_isdst</code> تأخذ القيمة <code>‎-1</code>، أما إذا أعاد التابع [[Python/datetime/datetime/dst|<code>dst()‎</code>]]‎ قيمة غير صفرية، فإنّ الراية <code>tm_isdst</code> تأخذ القيمة <code>1</code>، وإلّا تأخذ هذه الراية القيمة <code>0</code>.


== أمثلة ==
== أمثلة ==


يبين المثال التالي آلية عمل التابع:
يبين المثال التالي آلية عمل التابع:<syntaxhighlight lang="python3">
 
>>> from datetime import date
syntaxhighlight lang="python3">
>>> d = date(2018, 6, 26)
>>> from datetime import datetime
>>> d = datetime(2018, 6, 26, 2, 3, 11)
>>> t = d.timetuple()
>>> t = d.timetuple()
>>> for i in t:
>>> for i in t:
سطر 70: سطر 68:
6        # الشهر
6        # الشهر
26        # اليوم
26        # اليوم
2         # الساعة
0         # الساعة
3         # الدقيقة
0         # الدقيقة
11         # الثانية
0         # الثانية
1        # اسم اليوم (0 = الاثنين)‏
1        # اسم اليوم (0 = الاثنين)‏
177      # اليوم 177 في السنة
177      # اليوم 177 في السنة
سطر 87: سطر 85:


== انظر أيضًا ==
== انظر أيضًا ==
* التابع <code>[[Python/datetime/datetime/utctimetuple|datetime.utctimetuple()]]</code>‎: يعيد التابع الصنف <code>time.struct_time</code> كما تعيده الدالة <code>time.localtime()</code>‎ ولكن حسب التوقيت العالمي المنسّق.


== مصادر ==
== مصادر ==

مراجعة 23:33، 7 يوليو 2018

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