Python उदाहरण सहित कैलेंडर मॉड्यूल

⚡ स्मार्ट सारांश

कैलेंडर मॉड्यूल में Python यह TextCalendar और HTMLCalendar क्लास का उपयोग करके टेक्स्ट और HTML कैलेंडर बनाता है। यह दिन, महीने और वर्ष के आधार पर तिथि की गणना करता है और आपको किसी भी महीने के लिए शुरुआती कार्यदिवस को अनुकूलित करने की सुविधा देता है।

  • 🔘 दो प्रकार के कैलेंडर: TextCalendar और HTMLCalendar क्लास चयनित महीने या वर्ष के लिए सादे पाठ और वेब-तैयार कैलेंडर तैयार करते हैं।
  • कार्यदिवस का पहला दिन: calendar.SUNDAY जैसे स्थिरांक और setfirstweekday() विधि यह निर्धारित करते हैं कि प्रत्येक सप्ताह किस दिन से शुरू होता है।
  • दिनों को दोहराएं: itermonthdays() विधि एक महीने पर लूप चलाती है और ओवरलैप को चिह्नित करती है।ping आसन्न महीनों के दिनों को शून्य के रूप में गिना जाता है।
  • 🧪 सहायक फ़ंक्शन: isleap(), weekday() और monthrange() जैसे फ़ंक्शन बिना किसी अतिरिक्त लाइब्रेरी के सामान्य तिथि संबंधी प्रश्नों का उत्तर देते हैं।
  • मानक पुस्तकालय: कैलेंडर मॉड्यूल इसके साथ आता है Pythonइसलिए इसे आयात करने और उपयोग करने से पहले किसी इंस्टॉलेशन की आवश्यकता नहीं है।
  • 🤖 एआई वर्कफ़्लो: मशीन लर्निंग पाइपलाइन समय-श्रृंखला पूर्वानुमान के लिए सप्ताह के दिन और लीप वर्ष जैसे कैलेंडर संबंधी विशेषताओं को प्राप्त करती हैं।

Python कैलेंडर मॉड्यूल

RSI कैलेंडर मॉड्यूल में Python इसमें एक कैलेंडर क्लास है जो तिथि, माह और वर्ष के आधार पर विभिन्न कार्यों के लिए गणना करने की अनुमति देता है। इसके अलावा, टेक्स्ट कैलेंडर और एचटीएमएल कैलेंडर कक्षाओं में Python आप कैलेंडर को संपादित कर सकते हैं और अपनी आवश्यकतानुसार इसका उपयोग कर सकते हैं। आइए देखें कि हम इसके साथ क्या कर सकते हैं। Python पंचांग।

कैलेंडर मॉड्यूल क्या है? Python?

RSI कैलेंडर मॉड्यूल का हिस्सा है Python यह एक मानक लाइब्रेरी है, इसलिए इसे इंस्टॉल करने की आवश्यकता नहीं है। इसमें कई क्लास और सहायक फ़ंक्शन शामिल हैं जो कैलेंडर बनाते हैं और तिथि से संबंधित सामान्य प्रश्नों के उत्तर देते हैं, जैसे कि कोई तिथि सप्ताह के किस दिन पड़ती है या किसी महीने में कितने दिन होते हैं।

यह मॉड्यूल पांच मुख्य क्लास प्रदान करता है:

  • कैलेंडर यह एक बेस क्लास है जो अन्य कैलेंडरों के निर्माण के लिए डेटा प्रदान करती है।
  • टेक्स्ट कैलेंडर यह एक महीने या पूरे वर्ष के लिए सरल पाठ वाले कैलेंडर तैयार करता है।
  • एचटीएमएल कैलेंडर यह वेब पेजों के लिए कैलेंडर को HTML टेबल के रूप में तैयार करता है।
  • स्थानीय पाठ कैलेंडर यह एक टेक्स्ट कैलेंडर है जो चुने हुए स्थान के दिन और महीने के नामों का उपयोग करता है।
  • स्थानीयएचटीएमएल कैलेंडर यह HTML का वह समकक्ष है जो चयनित स्थान का सम्मान करता है।

सामान्यतः, एक कैलेंडर सप्ताह की शुरुआत होती है Mondayयूरोपीय परंपरा का पालन करते हुए। आप calendar.SUNDAY जैसे स्थिरांक का उपयोग करके पहला दिन बदल सकते हैं, जैसा कि नीचे दिए गए उदाहरणों में दिखाया गया है।

टेक्स्ट कैलेंडर को प्रिंट कैसे करें Python

चरण 1) कोड चलाएँ.

टेक्स्ट कैलेंडर प्रिंट करें Python

  • Code पंक्ति # 1: हम "import calendar" से शुरू करते हैं, जो इस मॉड्यूल के सभी क्लासों को आयात करेगा।
  • Code पंक्ति # 3: c= calendar.TextCalendar(calendar.SUNDAY) इंटरप्रेटर को टेक्स्ट कैलेंडर बनाने के लिए कहती है। महीने की शुरुआत रविवार से होगी। Pythonआप कैलेंडर को अपनी पसंद के अनुसार फॉर्मेट कर सकते हैं और महीने की शुरुआत के दिन को बदल सकते हैं।
  • Code पंक्ति # 4: str= c.formatmonth(2025,1) वर्ष 2025 के लिए कैलेंडर बनाता है, महीना 1 - जनवरी।
  • Code पंक्ति # 5: प्रिंट str आउटपुट प्रिंट करेगा।

आइए जल्दी से रविवार के मान को गुरुवार में बदलें और आउटपुट की जांच करें।

किसी कार्यदिवस के पहले दिन को बदलें Python कैलेंडर

एचटीएमएल कैलेंडर को कैसे प्रिंट करें Python

चरण 2) आप कैलेंडर को HTML फॉर्मेट में भी प्रिंट कर सकते हैं। यह सुविधा उन डेवलपर्स के लिए उपयोगी है जो कैलेंडर के लुक और फील में बदलाव करना चाहते हैं।

एक एचटीएमएल कैलेंडर प्रिंट करें Python

महीने के दिनों को लूप में कैसे घुमाएँ

चरण 3) लूप्स c.itermonthdays (2025,4) का उपयोग करके किसी महीने के दिनों पर प्रयोग करें; यह उस महीने के दिनों की कुल संख्या प्राप्त करेगा।

महीने के दिनों में लूप करें Python

  • जब आप किसी विशिष्ट महीने, जैसे कि "अप्रैल", के लिए कुल दिनों की संख्या प्राप्त करने के लिए कोड को निष्पादित करते हैं, तो आपको आउटपुट में 30 दिन मिलेंगे, लेकिन आपको इन दिनों के साथ शुरुआत में और कभी-कभी अंत में कुछ शून्य भी दिखाई देंगे।
  • आउटपुट में शून्य का मतलब है कि सप्ताह का दिन ओवरलैप हो रहा है।ping महीने से संबंधित नहीं है, यानी यह उस महीने का नहीं है।
  • आउटपुट में ये शून्य इसलिए दिखाई दे रहे हैं क्योंकि आपके कोड में आपने एक दिन (गुरुवार) का उल्लेख किया है। इसलिए जब आप "c.itermonthdays" फ़ंक्शन को कॉल करते हैं, तो यह गुरुवार से दिनों की गिनती शुरू करता है, और आपका गुरुवार 1 अप्रैल से शुरू नहीं हो सकता - यह 28 या 29 मार्च भी हो सकता है। इसलिए कोड 28 मार्च से लेकर 1 अप्रैल तक के दिनों की गिनती शुरू करता है। इन दिनों को शून्य के रूप में गिना जाता है, और आउटपुट में आपको ये शून्य दिखाई देंगे। महीने के अंत के लिए भी यही बात लागू होती है।
  • इसलिए, 1 से 30 तक की तारीखों को छोड़कर, पिछले और अगले महीने की सभी तारीखें आउटपुट में शून्य के रूप में दिखाई देती हैं।

स्थानीय सिस्टम से महीने और सप्ताह के दिनों के नाम कैसे प्राप्त करें

चरण 4) आप स्थानीय सिस्टम से महीने या कार्यदिवस जैसे डेटा प्राप्त कर सकते हैं।

स्थानीय सिस्टम से महीने के नाम प्राप्त करें Python

  • यहां आउटपुट से पता चलता है कि हमने स्थानीय सिस्टम से महीनों के नाम प्रिंट किए हैं। इसी तरह, आप नीचे दिखाए अनुसार सप्ताह के दिनों के नाम भी प्राप्त कर सकते हैं।
  • आउटपुट स्थानीय सिस्टम पर निर्भर करता है। यदि आपका स्थानीय सिस्टम किसी अन्य देश पर सेट है, तो यह उस देश की स्थानीय सेटिंग्स के अनुसार आउटपुट देगा। यहाँ महीनों की बात हो रही है, इसलिए कोई फर्क नहीं पड़ेगा, लेकिन सप्ताह या दिन के लिए आउटपुट निश्चित रूप से अलग होगा।

स्थानीय सिस्टम से कार्यदिवसों के नाम प्राप्त करें Python

पूरे साल के लिए कोई खास दिन कैसे खोजें

चरण 5) आप पूरे वर्ष के लिए किसी विशिष्ट दिन की सूची प्राप्त कर सकते हैं। उदाहरण के लिए, प्रत्येक वर्ष की पहली तिथि को लेखापरीक्षा दिवस होता है। Monday एक सप्ताह के पहले दिन की तारीख जानना चाहते हैं। मान लीजिए आप सप्ताह के पहले दिन की तारीख जानना चाहते हैं। Monday हर महीने के लिए। आप इस कोड का उपयोग कर सकते हैं।

पूरे साल में से कोई एक खास दिन ढूंढें Python

  • mycal = calendar.monthcalendar(2025, month) महीने के लिए एक कैलेंडर बनाता है।
  • वेरिएबल week1 और week2 को कैलेंडर के पहले और दूसरे सप्ताह पर सेट करें।
  • जांचें कि क्या सप्ताह 1 में शामिल है Monday और ऑडिट की तारीख तय करें।
  • अन्यथा, लेखापरीक्षा दिवस को पहले दिन के रूप में निर्धारित करें। Monday दूसरे सप्ताह में।
  • आउटपुट पहले की तारीख दिखाता है Monday जो उस महीने में आता है।
  • इस कैल ऑब्जेक्ट की लंबाई महीने में हफ़्तों की संख्या पर निर्भर करती है। हमारे मामले में, यह एक या दो है, जैसा कि पहले महीने में बताया गया है। Monday सप्ताह का शीर्षक अक्सर पहले सप्ताह में होता है, लेकिन यदि ऐसा नहीं होता है, तो हम दूसरे सप्ताह पर विचार करते हैं। आइए विस्तार से देखें कि हम दूसरे सप्ताह पर भी विचार क्यों करते हैं।
  • यहां हम कैलेंडर स्थिरांक का उपयोग कर रहे हैं। Mondayकैलेंडर ऑब्जेक्ट आपको रविवार को दर्शाने वाले स्थिरांक प्रदान करता है। Mondayमंगलवार, इत्यादि। यदि, पहले सप्ताह में, जिस दिन का प्रतिनिधित्व किया जाता है Monday स्थिरांक शून्य के बराबर नहीं है – याद रखें, शून्य का अर्थ है किसी अन्य महीने से संबंधित दिन – फिर वह Monday यह इसी महीने से संबंधित है और ऑडिट का दिन पहले सप्ताह के भीतर है। यदि यह 0 है, तो पहला Monday यह महीने के पहले सप्ताह में नहीं है, इसलिए यह दूसरे सप्ताह में होना चाहिए।
  • उस स्थिति में, हम ऑडिट दिवस चर को इस प्रकार सेट करते हैं: Monday दूसरे सप्ताह द्वारा दर्शाया गया। ऑडिट का दिन पहले या दूसरे सप्ताह के किसी भी दिन के अनुसार वापस आ जाता है।

पूर्ण Python कैलेंडर Code उदाहरण

यह रहा पूरा कोड।

Python 2 उदाहरण

import calendar
# Create a plain text calendar
c = calendar.TextCalendar(calendar.THURSDAY)
str = c.formatmonth(2025, 1, 0, 0)
print str

# Create an HTML formatted calendar
hc = calendar.HTMLCalendar(calendar.THURSDAY)
str = hc.formatmonth(2025, 1)
print str
# loop over the days of a month
# zeroes indicate that the day of the week is in a next month or overlapping month
for i in c.itermonthdays(2025, 4):
    print i

    # The calendar can give info based on local such a names of days and months (full and abbreviated forms)
    for name in calendar.month_name:
        print name
    for day in calendar.day_name:
        print day
    # calculate days based on a rule: For instance an audit day on the second Monday of every month
    # Figure out what days that would be for each month, we can use the script as shown here
    for month in range(1, 13):
		# It retrieves a list of weeks that represent the month
        mycal = calendar.monthcalendar(2025, month)
		# The first MONDAY has to be within the first two weeks
        week1 = mycal[0]
        week2 = mycal[1]
        if week1[calendar.MONDAY] != 0:
            auditday = week1[calendar.MONDAY]
        else:
        # if the first MONDAY isn't in the first week, it must be in the second week
        	auditday = week2[calendar.MONDAY]
print "%10s %2d" % (calendar.month_name[month], auditday)

Python 3 उदाहरण

import calendar
# Create a plain text calendar
c = calendar.TextCalendar(calendar.THURSDAY)
str = c.formatmonth(2025, 1, 0, 0)
print(str)

# Create an HTML formatted calendar
hc = calendar.HTMLCalendar(calendar.THURSDAY)
str = hc.formatmonth(2025, 1)
print(str)
# loop over the days of a month
# zeroes indicate that the day of the week is in a next month or overlapping month
for i in c.itermonthdays(2025, 4):
    print(i)

    # The calendar can give info based on local such a names of days and months (full and abbreviated forms)
    for name in calendar.month_name:
        print(name)
    for day in calendar.day_name:
        print(day)
    # calculate days based on a rule: For instance an audit day on the second Monday of every month
    # Figure out what days that would be for each month, we can use the script as shown here
    for month in range(1, 13):
		# It retrieves a list of weeks that represent the month
        mycal = calendar.monthcalendar(2025, month)
		# The first MONDAY has to be within the first two weeks
        week1 = mycal[0]
        week2 = mycal[1]
        if week1[calendar.MONDAY] != 0:
            auditday = week1[calendar.MONDAY]
        else:
        # if the first MONDAY isn't in the first week, it must be in the second week
        	auditday = week2[calendar.MONDAY]
print("%10s %2d" % (calendar.month_name[month], auditday))

उपयोगी कार्य Python कैलेंडर मॉड्यूल

ऊपर दिए गए विस्तृत विवरण के अलावा, कैलेंडर मॉड्यूल में कई उपयोगी फ़ंक्शन शामिल हैं जो क्लास इंस्टेंस बनाए बिना काम करते हैं:

  • कैलेंडर.कैलेंडर(वर्ष) यह एक बहु-पंक्ति स्ट्रिंग के रूप में पूरे वर्ष का कैलेंडर लौटाता है, जबकि कैलेंडर.प्रकाल(वर्ष) इसे सीधे प्रिंट करता है।
  • कैलेंडर.माह(वर्ष, माह) यह टेक्स्ट के रूप में एक महीना लौटाता है, और calendar.prmonth(year, month) इसे प्रिंट करता है.
  • कैलेंडर.माह कैलेंडर(वर्ष, महीना) यह महीने को सप्ताह की पंक्तियों की सूची के रूप में लौटाता है, जहां प्रत्येक दिन एक पूर्णांक होता है और महीने के बाहर के दिन 0 होते हैं।

ये फ़ंक्शन त्वरित, एक-पंक्ति कैलेंडर आउटपुट को संभव बनाते हैं, जो स्क्रिप्ट और इंटरैक्टिव सत्रों में सुविधाजनक होता है जहां आपको TextCalendar या HTMLCalendar कक्षाओं के अतिरिक्त नियंत्रण की आवश्यकता नहीं होती है।

किसी ग्रह पर लीप वर्ष की जांच कैसे करें Python

कैलेंडर मॉड्यूल आपको यह भी बता सकता है कि कोई वर्ष लीप वर्ष है या नहीं, जो महत्वपूर्ण है क्योंकि ऐसे वर्षों में फरवरी में 28 के बजाय 29 दिन होते हैं। दो फ़ंक्शन इसे संभालते हैं:

  • कैलेंडर.आइस्लीप(वर्ष) यह मान तब True लौटाता है जब वर्ष लीप वर्ष हो और अन्यथा False लौटाता है।
  • calendar.leapdays(y1, y2) यह y1 से लेकर y2 तक (लेकिन y2 को शामिल किए बिना) की अवधि में लीप वर्षों की संख्या लौटाता है।

उदाहरण के लिए, calendar.isleap(2024) True लौटाता है, जबकि calendar.isleap(2025) False लौटाता है। लीप वर्ष की जाँच तब उपयोगी होती है जब आप तिथियों को सत्यापित करते हैं, आवर्ती घटनाओं को शेड्यूल करते हैं, या दो वर्षों के बीच दिनों की सटीक संख्या की गणना करते हैं।

अक्सर पूछे जाने वाले प्रश्न

कैलेंडर मॉड्यूल टेक्स्ट, HTML, सप्ताह के दिनों की संख्या और लीप वर्ष की जाँच सहित कैलेंडर बनाने और उनका विश्लेषण करने पर केंद्रित है। डेटटाइम मॉड्यूल विशिष्ट टाइमस्टैम्प, अंकगणित और अलग-अलग तिथियों और समयों के फ़ॉर्मेटिंग को संभालता है। कई प्रोग्राम इन दोनों मॉड्यूल को आयात करते हैं और इनका एक साथ उपयोग करते हैं।

calendar.weekday(year, month, day) को कॉल करें। यह 0 से एक पूर्णांक लौटाता है (Monday) से 6 (रविवार) तक। इस संख्या को पठनीय लेबल में बदलने के लिए इसे calendar.day_name के साथ जोड़ें। Monday या शुक्रवार।

calendar.monthrange(year, month) का उपयोग करें। यह एक टपल लौटाता है जिसका दूसरा मान दिनों की संख्या है, इसलिए calendar.monthrange(2025, 2)[1] 28 लौटाता है। पहला मान उस महीने के पहले दिन का कार्यदिवस है।

calendar.LocaleTextCalendar या calendar.LocaleHTMLCalendar का उपयोग करें और "fr_FR" जैसा लोकेल पास करें। फ़ॉर्मेट किया गया महीना उस भाषा में सप्ताह के दिन और महीने के नाम प्रिंट करेगा, बशर्ते कि वह लोकेल ऑपरेटिंग सिस्टम पर इंस्टॉल हो।

HTMLCalendar().formatmonth(2025, 1) का उपयोग करके मार्कअप जनरेट करें, फिर फ़ाइल को राइट मोड में खोलें और उस स्ट्रिंग के साथ write() फ़ंक्शन को कॉल करें। इसे .html एक्सटेंशन के साथ सेव करने से कोई भी ब्राउज़र स्टाइल किए गए कैलेंडर को प्रदर्शित कर सकेगा।

सामान्यतः सप्ताह की शुरुआत इस तारीख से होती है। Mondayयूरोपीय परंपरा का पालन करते हुए, कैलेंडर.सेटफर्स्टवीकडे(कैलेंडर.संडे) को कॉल करें, या किसी टेक्स्टकैलेंडर को कैलेंडर.संडे जैसा कोई स्थिरांक पास करें, ताकि सप्ताह किसी और दिन से शुरू हो।

डेटा पाइपलाइन कच्चे डेटा से सप्ताह के दिन, सप्ताह संख्या और लीप वर्ष जैसे विशिष्ट लक्षण प्राप्त करने के लिए कैलेंडर फ़ंक्शन का उपयोग करती हैं। ये विशिष्ट कैलेंडर लक्षण मशीन लर्निंग मॉडल को समय-श्रृंखला पूर्वानुमान में साप्ताहिक और मौसमी पैटर्न को समझने में मदद करते हैं।

जी हां। GitHub Copilot और एजेंटिक AI सहायक एक छोटी टिप्पणी से कैलेंडर मॉड्यूल स्निपेट लिख सकते हैं - जैसे महीने प्रिंट करना, लीप वर्ष की जांच करना या HTML कैलेंडर बनाना। Revआउटपुट को ध्यान से देखें, क्योंकि कार्यदिवस अनुक्रमणिका और प्रथम-दिन की सेटिंग्स में भ्रम होना आसान है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: