وحدة calendar‎ في بايثون

من موسوعة حسوب
اذهب إلى: تصفح، ابحث


تتيح هذه الوحدة الحصول على تقاويم مشابهة لمخرجات البرنامج cal في أنظمة يونكس، إلى جانب أنّها تقدّم عددًا من التوابع المفيدة والخاصة بالتقاويم. يبدأ الأسبوع في هذه التقاويم بصورة افتراضية بيوم الإثنين، وينتهي بيوم الأحد (هذا هو السائد في أوروبا).

يمكن استخدام الدالة setfirstweekday()‎ لجعل الأسبوع يبدأ بيوم الأحد (6) أو أي يوم آخر. تكون المعاملات التي تحدّد التواريخ أعدادًا صحيحة. تقدّم بايثون وحدتين إضافيتين للتعامل مع الوقت والتاريخ هما datetime و time.

تستخدم الدوال والأصناف المعرّفة في هذه الوحدة تقويمًا مثاليًا، وهو التقويم الكريكوري الحالي والممتدّ في كلا الاتجاهين (الماضي والمستقبل) وإلى ما لا نهاية. يتطابق هذا التقويم مع "التقويم التنبؤي" والذي يقدّمه Dershowitz و Reingold في كتابهما "Calendrical Calculations" والذي يمثّل التقويم الأساسي والمعتمد في جميع أنظمة الحواسيب. يفسّر الصفر والسنوات ذات الأرقام السالبة كما هو موصوف في معيار ISO 8601، لتكون السنة 0 هي السنة 1 قبل الميلاد، و ‎-1 هي السنة 2 قبل الميلاد، وهكذا دواليك.

دوال الوحدة calendar

تقدّم وحدة calendar عددًا من الدوال الخاصّة بالتقاويم النصية البسيطة.

الدالة setfirstweekday()‎

تعيّن الدالة اليوم الذي يبدأ به الأسبوع.

الدالة firstweekday()

تعيد الدالة الإعدادات الحالية الخاصة باليوم الذي يبدأ به الأسبوع.

الدالة isleap()

تخبر الدالة ما إذا كانت السنة المعطاة كبيسة أم لا.

الدالة leapdays()‎

تعيد الدالة عدد السنوات الكبيسة ضمن نطاق السنوات المحدد.

الدالة weekday()

تعيد الدالة يوم الأسبوع في الشهر المعطى في السنة المعطاة.

الدالة weekheader()

تعيد الدالة ترويسة تتضمن أسماء أيام الأسبوع بصيغة مختصرة.

الدالة monthrange()‎

تعيد الدالة أول يوم في الشهر وعدد أيام الشهر المعطى في السنة المعطاة.

الدالة monthcalendar()‎

تعيد الدالة مصفوفة matrix تمثّل تقويم الشهر.

الدالة prmonth()‎

تطبع الدالة تقويم الشهر الذي تعيده الدالة month()‎.

الدالة month()

تعيد الدالة تقويم الشهر على هيئة سلسلة نصية متعددة الأسطر.

الدالة prcal()

تطبع الدالة تقويم السنة برمّتها والذي تعيده الدالة calendar()‎.

الدالة calendar()

تعيد الدالة تقويمًا ذا ثلاثة أعمدة يتضمّن سنة كاملة وعلى هيئة سلسلة نصية متعددة الأسطر.

الدالة timegm()

تعيد الدالة قيمة الختم الزمني المقابل في نظام يونكس.

خصائص الوحدة calendar

تقدّم وحدة calendar الخصائص التالية:

الخاصية calendar.day_name

مصفوفة تعرض أيام الأسبوع في الإعدادات المحلية الحالية.

الخاصية calendar.day_abbr

مصفوفة تعرض الأسماء المختصرة لأيام الأسبوع في الإعدادات المحلية الحالية.

الخاصية calendar.month_name

مصفوفة تعرض أشهر السنة في الإعدادات المحلية الحالية. تتبع هذا الخاصية ما هو متعارف عليه في أن يكون شهر كانون الثاني (يناير) هو الشهر رقم 1، لذا يكون طول المصفوفة 13، وتكون month_name[0]‎ سلسلة فارغة.

الخاصية calendar.month_abbr

مصفوفة تعرض الأسماء المختصرة لأشهر السنة في الإعدادات المحلية الحالية. تتبع هذا الخاصية ما هو متعارف عليه في أن يكون شهر كانون الثاني (يناير) هو الشهر رقم 1، لذا يكون طول المصفوفة 13، وتكون month_name[0]‎ سلسلة فارغة.

أصناف الوحدة calendar

تقدم وحدة calendar الأصناف الخمسة التالية للتعامل مع التقاويم بطرق مختلفة:

الصنف Calendar

يقدّم كائن Calendar عددًا من التوابع التي يمكن استخدامها لتحضير بيانات التقويم لغرض التنسيق.

الصنف TextCalendar

يستخدم هذا الصنف لإنشاء تقويم بهيئة نصية صرفة plain text.

الصنف HTMLCalendar

يمكن استخدام هذا الصنف لإنشاء تقاويم بصيغة HTML.

الصنف LocaleTextCalendar

هذا الصنف متفرّع من الصنف TextCalendar، ويستخدم لعرض التقويم بحسب الإعدادات المحلية وبهيئة نصية صرفة.

الصنف LocaleHTMLCalendar

هذا الصنف متفرّع من الصنف HTMLCalendar، ويستخدم لعرض التقويم بحسب الإعدادات المحلية وبهيئة HTML.

انظر أيضًا

مصادر