„Python“ kalendoriaus modulis turi kalendoriaus klasę, leidžiančią atlikti įvairių užduočių skaičiavimus pagal datą, mėnesį ir metus. Be to, „Python“ „TextCalendar“ ir HTMLCalendar klasės leidžia redaguoti kalendorių ir naudoti pagal jūsų reikalavimus.
Pažiūrėkime, ką galime padaryti su „Python“ kalendoriumi.
1 žingsnis) Paleiskite kodą.
- Kodo eilutė Nr. 1: Pradedame „importuoti kalendorių“, kuris importuos visas šio modulio klases.
- Kodo eilutė Nr. 3: c = kalendorius. „TextCalendar“ (calendar.SUNDAY) liepia vertėjui sukurti teksto kalendorių. Mėnesio pradžia bus sekmadienis. „Python“ galite formatuoti kalendorių taip, kad galėtumėte pakeisti mėnesio dieną
- Kodo eilutė Nr. 4: str = c. Mėnuo (2025,1) Kuriame 2025 metų, 1 mėnesio - sausio kalendorių
- Kodo eilutė Nr. 5: spausdinimo str išspausdins išvestį.
Greitai pakeiskime vertę iš sekmadienio į ketvirtadienį ir patikrinkime išvestį
2 žingsnis) Taip pat galite atsispausdinti kalendorių HTML formatu. Ši funkcija yra naudinga kūrėjui, jei jie nori pakeisti kalendoriaus išvaizdą ir veikimą.
3 žingsnis. Apsilankykite mėnesio dienomis naudodamiesi „c.itermonthday“ (2025,4), jis surinks bendrą to mėnesio dienų skaičių.
- Kai vykdote kodą, kad gautumėte bendrą tam tikro mėnesio dienų skaičių, sakykite „Balandis“, išvestyje gausite 30 dienų, tačiau kartu su šiomis dienomis matysite ir keletą nulių jo pradžioje, o kartais ir pabaigoje .
- Nulys išvestyje reiškia, kad savaitės diena yra sutampančiame mėnesyje, o tai reiškia, kad ji nepriklauso tam mėnesiui.
- Šie nuliai pasirodo produkcijos, nes jūsų kodą, kurį minėjo dieną (ketvirtadienis), todėl, kai jūs vadinate funkcija "c.itermonthdays", ji bus pradėti skaičiuoti dienas nuo ketvirtadienio ir jūsų ketvirtadienį negali pradėti dienos 1 g balandžio ji gali būti 28 -asis arba 29 -osios ir kovo, todėl, kai jūs vykdyti kodą bus pradėti skaičiuoti dienas nuo 28 -osios į kovo mėnesį ir tų dienų, po to iki 1 g balandžio. Šios dienos bus skaičiuojamos kaip nulis, o išvestyje matysite šiuos nulius ir tas pats galioja mėnesio pabaigoje.
- Taigi, išskyrus 1-30 datą, visos ankstesnio ir vėlesnio mėnesio datos išvestyje bus rodomos kaip nuliai.
4 žingsnis) Galite gauti duomenis iš vietinės sistemos, pvz., Mėnesių ar darbo dienų ir pan
- Čia pateikiama išvestis rodo, kad mes išspausdinome mėnesių pavadinimą iš vietinės sistemos. Taip pat galite gauti darbo dienų pavadinimą, kaip parodyta žemiau
- Išvestis priklausys nuo vietinės sistemos. Tarkime, jei jūsų vietinė sistema yra kitos šalys, ji pateiks išvestį pagal tos šalies vietinius nustatymus. Čia mes turime mėnesius, todėl tai nebus skirtumas, bet jei tai savaitė ar diena, tai tikrai skirsis.
5 žingsnis) Galite gauti konkrečios dienos sąrašą ištisus metus. Pavyzdžiui, kiekvieną pirmąjį savaitės pirmadienį yra audito diena. Norite sužinoti kiekvieno mėnesio pirmadienio datą. Galite naudoti šį kodą
- mycal = calendar.monthcalendar (2025, mėnuo) sukurs mėnesio kalendorių
- Nustatykite kintamuosius savaitę 1 ir savaitę 2 į pirmąją ir antrąją kalendoriaus savaitę
- Patikrinkite, ar 1 savaitėje yra pirmadienis, nustatykite audito dieną
- Kita audito diena nustatyta kaip pirmasis savaitės pirmadienis
- Išvestyje rodoma pirmo mėnesio, kuris yra tą mėnesį, data.
- Šio objekto „Cal“ ilgis bus tam tikras, atsižvelgiant į tai, kiek savaitės yra mėnesį. Mūsų atveju tai bus vienas ar du, nes pirmasis savaitės pirmadienis dažniausiai bus pirmąją savaitę, bet jei ne, tada apsvarstykite antrąją savaitę. Pažiūrėkime išsamiai, kodėl mes taip pat svarstome antrą savaitę.
- Čia mes naudojame nuolatinį kalendoriaus pirmadienį, kalendoriaus objektas suteikia jums konstantas, kurios atspindi sekmadienį, pirmadienį, antradienį ir t. T. Tai matėme anksčiau. Taigi, jei pirmąją savaitę pirmadienio konstanta nurodoma diena nėra lygi 0, atminkite, kad nuliai reiškia dienas, kurios priklauso kitam mėnesiui. Taigi, šiuo atveju, jei jis lygus nuliui, tai bus pirmadienis, priklausantis ankstesniam mėnesiui. Bet jei pirmasis pirmadienis nėra lygus 0, tai reiškia, kad mano audito diena bus pirmąją savaitę. Kitu atveju, jei tai yra 0, tada pirmasis pirmadienis nėra pirmąją mėnesio savaitę, jis turi būti antrasis.
- Taigi, tada sakau gerai, nustatykite, kad mano audito dienos kintamasis būtų pirmadienis, kurį atstovauja antroji savaitė. Taigi, audito diena grįš su kokia diena bus pirmąją ar antrąją savaitę.
Čia yra visas kodas
„Python 2“ pavyzdys
importo kalendorius# Sukurkite paprasto teksto kalendoriųc = kalendorius. TextCalendar (kalendorius. TREČIADIENIS)str = c. mėnuo (2025, 1, 0, 0)spausdinimo str# Sukurkite HTML suformatuotą kalendoriųhc = kalendorius.HTMLCalendar (kalendorius.TREČIADIENIS)str = hc. mėnuo (2025, 1)spausdinimo str# ciklas per mėnesio dienas# nulis rodo, kad savaitės diena yra kitame arba sutampančiame mėnesyjeaš per antradienius (2025, 4):spausdinti i# Kalendorius gali pateikti informaciją, pagrįstą vietiniais, tokių dienų ir mėnesių pavadinimai (visos ir sutrumpintos formos)vardui kalendoriuje.mėnesio_pavadinimas:spausdinimo vardasdienai kalendoriuje.dienos_pavadinimas:spausdinimo diena# apskaičiuoti dienas pagal taisyklę: Pavyzdžiui, audito diena kiekvieno mėnesio antrą pirmadienį# Sužinokite, kokios dienos būtų kiekvieną mėnesį, mes galime naudoti scenarijų, kaip parodyta čiaper mėnesį intervale (1, 13):# Tai pateikia mėnesį atitinkančių savaičių sąrašąmycal = kalendorius. mėnesio kalendorius (2025 m., mėnuo)# Pirmasis pirmadienis turi būti per pirmąsias dvi savaitessavaitė1 = mycal [0]savaitė2 = mycal [1]jei savaitė1 [kalendorius.PIRMADIENIS]! = 0:audito diena = savaitė1 [kalendorius.MONDAY]Kitas:# jei pirmasis PIRMADIENIS nėra pirmą savaitę, tai turi būti antrą savaitęaudito diena = savaitė2 [kalendorius.MONDAY]spausdinti "% 10s% 2d"% (kalendoriaus mėn ._pavadinimas [mėnuo], audito diena)
„Python 3“ pavyzdys
importo kalendorius# Sukurkite paprasto teksto kalendoriųc = kalendorius. TextCalendar (kalendorius. TREČIADIENIS)str = c. mėnuo (2025, 1, 0, 0)spausdinti (str)# Sukurkite HTML suformatuotą kalendoriųhc = kalendorius.HTMLCalendar (kalendorius.TREČIADIENIS)str = hc. mėnuo (2025, 1)spausdinti (str)# ciklas per mėnesio dienas# nulis rodo, kad savaitės diena yra kitame arba sutampančiame mėnesyjeaš per antradienius (2025, 4):spausdinti (i)# Kalendorius gali pateikti informaciją, pagrįstą vietiniais, tokių dienų ir mėnesių pavadinimai (visos ir sutrumpintos formos)vardui kalendoriuje.mėnesio_pavadinimas:spausdinti (vardas)dienai kalendoriuje.dienos_pavadinimas:spausdinti (diena)# apskaičiuoti dienas pagal taisyklę: Pavyzdžiui, audito diena kiekvieno mėnesio antrą pirmadienį# Sužinokite, kokios dienos būtų kiekvieną mėnesį, mes galime naudoti scenarijų, kaip parodyta čiaper mėnesį intervale (1, 13):# Tai pateikia mėnesį atitinkančių savaičių sąrašąmycal = kalendorius. mėnesio kalendorius (2025 m., mėnuo)# Pirmasis pirmadienis turi būti per pirmąsias dvi savaitessavaitė1 = mycal [0]savaitė2 = mycal [1]jei savaitė1 [kalendorius.PIRMADIENIS]! = 0:audito diena = savaitė1 [kalendorius.MONDAY]Kitas:# jei pirmasis PIRMADIENIS nėra pirmą savaitę, tai turi būti antrą savaitęaudito diena = savaitė2 [kalendorius.MONDAY]spausdinti ("% 10s% 2d"% (kalendoriaus mėn ._pavadinimas [mėnuo], audito diena))
Santrauka:
- „Python“ galite formatuoti kalendorių taip, kaip norite, taip pat galite pakeisti mėnesio dieną, kurią norite pradėti
- Išspausdinkite kalendorių HTML formatu
- Gaukite duomenis iš vietinės sistemos, pvz., Mėnesių ar darbo dienų
- Pateikite visų metų konkrečios dienos sąrašą