Modul kalender di Python memiliki kelas kalender yang memungkinkan penghitungan berbagai tugas berdasarkan tanggal, bulan, dan tahun. Di atasnya, kelas TextCalendar dan HTMLCalendar dengan Python memungkinkan Anda untuk mengedit kalender dan menggunakan sesuai kebutuhan Anda.
Mari kita lihat apa yang bisa kita lakukan dengan Kalender Python.
Step1) Jalankan kode.
- Baris Kode # 1: Kita mulai dengan "kalender impor" yang akan mengimpor semua kelas dari modul ini.
- Baris Kode # 3: c = calendar.TextCalendar (calendar.SUNDAY) memberi tahu penerjemah untuk membuat kalender teks. Awal bulan adalah hari Minggu. Dengan Python, Anda dapat memformat kalender karena Anda dapat mengubah hari dalam sebulan untuk memulai
- Baris Kode # 4: str = c.formatmonth (2025,1) Kami membuat kalender untuk tahun 2025, Bulan 1 - Januari
- Baris Kode # 5: print str akan mencetak output.
Mari segera ubah nilainya dari Minggu ke Kamis dan periksa hasilnya
Langkah 2) Anda juga dapat mencetak Kalender dalam format HTML, fitur ini berguna bagi pengembang jika mereka ingin membuat perubahan pada tampilan dan nuansa kalender
Langkah 3) Perulangan selama hari-hari dalam sebulan dengan menggunakan c. Hari bulan (2025,4), itu akan mengambil jumlah hari untuk bulan itu.
- Ketika Anda menjalankan kode untuk mendapatkan jumlah total hari untuk bulan tertentu, katakan "April" maka Anda akan mendapatkan 30 hari dalam output tetapi Anda juga akan melihat beberapa angka nol bersama dengan hari-hari ini di awal dan terkadang di akhir. .
- Nol dalam output berarti bahwa hari dalam seminggu berada dalam bulan yang tumpang tindih, yang berarti bukan milik bulan itu.
- Nol ini muncul dalam output karena, dalam kode Anda, Anda telah disebutkan hari (Kamis), jadi ketika Anda memanggil fungsi "c.itermonthdays", itu akan mulai menghitung hari dari Kamis dan Kamis Anda mungkin tidak mulai dengan tanggal 1 st April itu mungkin menjadi 28 th atau 29 th Maret, jadi ketika Anda mengeksekusi kode itu akan mulai menghitung hari dari 28 th Maret dan hari apapun setelah itu sampai 1 st April. Hari-hari ini akan dihitung sebagai nol dan dalam output Anda akan melihat angka nol ini dan hal yang sama berlaku untuk akhir bulan.
- Jadi kecuali tanggal 1-30, semua tanggal dari bulan sebelumnya dan juga bulan posting akan muncul di keluaran sebagai nol.
Langkah 4) Anda dapat mengambil data dari sistem lokal, seperti bulan atau hari kerja, dll
- Output di sini menunjukkan bahwa kami telah mencetak nama bulan dari sistem lokal. Selain itu, Anda juga dapat mengambil nama hari kerja seperti yang ditunjukkan di bawah ini
- Outputnya akan tergantung pada sistem lokal, misalkan jika sistem lokal Anda adalah beberapa negara lain maka itu akan memberikan output sesuai pengaturan lokal negara itu. Di sini kita punya waktu berbulan-bulan jadi tidak akan ada bedanya tapi kalau seminggu atau sehari pasti akan berbeda.
Langkah 5) Anda dapat mengambil daftar hari tertentu selama setahun penuh. Misalnya, ada hari audit setiap hari Senin pertama dalam seminggu. Anda ingin mengetahui tanggal Senin pertama setiap bulan. Anda dapat menggunakan kode ini
- mycal = calendar.monthcalendar (2025, month) akan membuat kalender untuk bulan tersebut
- Tetapkan variabel minggu1 dan minggu2 ke minggu Pertama dan kedua di kalender
- Periksa apakah Minggu 1 berisi Senin, atur hari audit
- Lain tetapkan hari audit sebagai Senin pertama dalam minggu ke-2
- Outputnya menunjukkan tanggal untuk hari Senin pertama yang jatuh di bulan itu.
- Panjang benda Cal ini akan menjadi panjang tertentu, berdasarkan berapa minggu ada dalam sebulan. Dalam kasus kami, ini akan menjadi satu atau dua karena Senin pertama minggu itu akan menjadi minggu pertama paling sering tetapi jika tidak maka pertimbangkan minggu kedua. Mari kita lihat secara detail mengapa kita juga mempertimbangkan minggu kedua.
- Di sini kita menggunakan konstanta kalender pada hari Senin, objek kalender memberikan konstanta yang merepresentasikan Minggu, Senin, Selasa, dan seterusnya. Kami telah melihat ini sebelumnya. Jadi, jika dalam minggu pertama hari yang diwakili oleh konstanta hari Senin tidak sama dengan 0, ingat nol berarti hari-hari milik bulan lain. Jadi, dalam hal ini, jika nol, itu akan menjadi hari Senin milik bulan sebelumnya. Tetapi jika hari Senin pertama tidak sama dengan 0, itu berarti hari audit saya akan berada dalam minggu pertama. Jika tidak, jika itu 0, maka hari Senin pertama bukan di minggu pertama setiap bulan, itu harus di minggu kedua.
- Jadi, saya katakan oke, setel variabel hari audit saya menjadi Senin yang diwakili oleh Minggu kedua. Jadi, hari audit akan kembali dengan hari apa pun untuk minggu pertama atau kedua.
Ini kode lengkapnya
Contoh Python 2
kalender impor# Buat kalender teks biasac = calendar.TextCalendar (calendar.THURSDAY)str = c. format bulan (2025, 1, 0, 0)cetak str# Buat kalender berformat HTMLhc = calendar.HTMLCalendar (calendar.THURSDAY)str = hc.formatmonth (2025, 1)cetak str# putaran selama hari dalam sebulan# nol menunjukkan bahwa hari dalam seminggu berada di bulan depan atau bulan yang tumpang tindihuntuk saya di c. hari-hari bulanan (2025, 4):cetak i# Kalender dapat memberikan info berdasarkan lokal seperti nama hari dan bulan (bentuk lengkap dan disingkat)untuk nama di calendar.month_name:nama cetakuntuk hari di calendar.day_name:hari cetak# hitung hari berdasarkan aturan: Misalnya hari audit pada hari Senin kedua setiap bulan# Cari tahu hari apa untuk setiap bulan, kita dapat menggunakan skrip seperti yang ditunjukkan di siniuntuk rentang bulan (1, 13):# Ini mengambil daftar minggu yang mewakili bulanmycal = calendar.monthcalendar (2025, bulan)# SENIN pertama harus dalam dua minggu pertamaminggu1 = mycal [0]minggu2 = mycal [1]jika minggu1 [kalender.MONDAY]! = 0:hari audit = minggu1 [kalender.MONDAY]lain:# Jika SENIN pertama bukan minggu pertama, maka harus di minggu keduahari audit = minggu2 [kalender.MONDAY]cetak "% 10s% 2d"% (calendar.month_name [bulan], auditday)
Contoh Python 3
kalender impor# Buat kalender teks biasac = calendar.TextCalendar (calendar.THURSDAY)str = c. format bulan (2025, 1, 0, 0)cetak (str)# Buat kalender berformat HTMLhc = calendar.HTMLCalendar (calendar.THURSDAY)str = hc.formatmonth (2025, 1)cetak (str)# putaran selama hari dalam sebulan# nol menunjukkan bahwa hari dalam seminggu berada di bulan depan atau bulan yang tumpang tindihuntuk saya di c. hari-hari bulanan (2025, 4):cetak (i)# Kalender dapat memberikan info berdasarkan lokal seperti nama hari dan bulan (bentuk lengkap dan disingkat)untuk nama di calendar.month_name:cetak (nama)untuk hari di calendar.day_name:cetak (hari)# hitung hari berdasarkan aturan: Misalnya hari audit pada hari Senin kedua setiap bulan# Cari tahu hari apa untuk setiap bulan, kita dapat menggunakan skrip seperti yang ditunjukkan di siniuntuk rentang bulan (1, 13):# Ini mengambil daftar minggu yang mewakili bulanmycal = calendar.monthcalendar (2025, bulan)# SENIN pertama harus dalam dua minggu pertamaminggu1 = mycal [0]minggu2 = mycal [1]jika minggu1 [kalender.MONDAY]! = 0:hari audit = minggu1 [kalender.MONDAY]lain:# Jika SENIN pertama bukan minggu pertama, maka harus di minggu keduahari audit = minggu2 [kalender.MONDAY]cetak ("% 10s% 2d"% (calendar.month_name [bulan], auditday))
Ringkasan:
- Dengan Python, Anda dapat memformat kalender sesuai keinginan karena Anda dapat mengubah tanggal awal bulan
- Cetak Kalender dalam format HTML
- Ambil data dari sistem lokal, seperti bulan atau hari kerja
- Ambil daftar hari tertentu selama setahun penuh