التابع datetime.datetime.isoformat()‎ في بايثون

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث


يعيد التابع سلسلة نصية تمثّل التاريخ بصيغة ISO 8601.

البنية العامة

isoformat(sep='T', timespec='auto')

المعاملات

sep

معامل اختياري يأخذ القيمة الافتراضية 'T' ويمثّل فاصلًا يتكوّن من حرف واحد يوضع بين جزئي الوقت والتاريخ في النتيجة المعادة.

timespec

يحدّد المعامل الاختياري timespec عدد المكوّنات الإضافية التي سيتضمّنها كائن الوقت (القيمة الافتراضية هي 'auto')، ويمكن للمكونات أن تكون واحدة ممّا يلي:

  • 'auto': مشابه للمكون 'second' إن كانت أجزاء الثانية مساوية للصفر، وإلا فإنّه مشابه للمكوّن 'microseconds'.
  • 'hours': تضمين الساعة بهيئة رقمين HH.
  • 'minutes': تضمين الساعة والدقيقة بالصيغة HH:MM.
  • 'seconds': تضمين الساعة والدقيقة والثانية بالصيغة HH:MM:SS.
  • 'milliseconds': تضمين الوقت كاملًا، مع اقتطاع قيم الثانية الكسرية إلى أجزاء من الثانية، بالصيغة HH:MM:SS.sss.
  • 'microseconds': عرض الوقت كاملًا بالصيغة HH:MM:SS.mmmmmm.

ملاحظة: تُقتطع مكوّنات الوقت المستثناة ولا تقرّب.

ملاحظة: أضيف المعامل timespec في الإصدار 3.6 من اللغة.

تطلق اللغة الخطأ ValueError في حال استخدام معامل timesepc غير صالح.

القيمة المعادة

يعيد التابع سلسلة نصية تمثّل التاريخ بصيغة ISO 8601 هي YYYY-MM-DDTHH:MM:SS.mmmmmm في حال تضمّن كائن datetime أجزاء الثانية، والصيغة YYYY-MM-DDTHH:MM:SS إن كانت قيمة أجزاء الثانية مساوية للصفر.

أمثلة

يبين المثال التالي آلية عمل التابع:

>>> from datetime import datetime
>>> dt = datetime(2018, 6, 27, 20, 58)
>>> dt.isoformat()
'2018-06-27T20:58:00'
>>> dt = datetime(2290, 12, 8, 11, 23, 9, 4939)
>>> dt.isoformat()
'2290-12-08T11:23:09.004939'
>>> dt.isoformat(sep="#")
'2290-12-08#11:23:09.004939'
>>> dt.isoformat(timespec="minutes")
'2290-12-08T11:23'
>>> dt.isoformat(timespec="milliseconds")
'2290-12-08T11:23:09.004'
>>> dt.isoformat(timespec="hours")
'2290-12-08T11'

انظر أيضًا

  • التابع datetime.isocalendar()‎: يعيد التابع صفًّا يضمّ ثلاثة عناصر هي (ISO year, ISO week number, ISO weekday).
  • التابع datetime.isoweekday()‎: يعيد التابع اليوم في الأسبوع على هيئة عدد صحيح، حيث يأخذ يوم الاثنين الرقم 0 ويوم الأحد الرقم 6.

مصادر

قسم datetime Objects في صفحة Basic date and time types في توثيق بايثون الرسمي.