Örnekli Python TAKVİM Eğitimi

Anonim

Python'daki Takvim modülü, tarih, ay ve yıla göre çeşitli görevler için hesaplamalara izin veren takvim sınıfına sahiptir. Üstelik Python'daki TextCalendar ve HTMLCalendar sınıfı, takvimi düzenlemenize ve ihtiyacınıza göre kullanmanıza olanak tanır.

Python Takvim ile neler yapabileceğimize bir bakalım.

Adım 1) Kodu çalıştırın.

  • Kod Satırı 1: Bu modülün tüm sınıflarını içe aktaracak olan "takvimi içe aktar" ile başlıyoruz.
  • Kod Satırı # 3: c = calendar.TextCalendar (calendar.SUNDAY), tercümana bir metin takvimi oluşturmasını söyler. Ayın başlangıcı Pazar günü olacak. Python'da, başlangıçta ayın gününü değiştirebileceğiniz gibi takvimi biçimlendirebilirsiniz.
  • Kod Satırı # 4: str = c.formatmonth (2025,1) 2025 yılı, 1 Ay - Ocak için takvim oluşturuyoruz
  • Kod Satırı # 5: yazdırma dizesi çıktıyı basacaktır.

Değeri hızlı bir şekilde Pazar'dan Perşembe'ye değiştirelim ve çıktıyı kontrol edelim

Adım 2) Takvimi HTML biçiminde de yazdırabilirsiniz, bu özellik, takvimin görünümünde ve izleniminde herhangi bir değişiklik yapmak istiyorlarsa geliştiricilere yardımcı olur.

Adım 3) c.itermonthday (2025,4) kullanarak bir ayın günleri üzerinden döngüler, o ayın toplam gün sayısını getirecektir.

  • Belirli bir ay için toplam gün sayısını almak için kodu çalıştırdığınızda "Nisan" deyin, o zaman çıktıda 30 gün elde edersiniz, ancak bu günlerin başında ve bazen sonunda bazı sıfırlar da görürsünüz. .
  • Çıktıdaki sıfırlar, haftanın gününün çakışan bir ayda olduğu anlamına gelir, bu da o aya ait olmadığı anlamına gelir.
  • Kodunuzda gündüz (Perşembe) belirtmiştik, çünkü bu sıfırlar Eğer işlev "c.itermonthdays" çağırdığınızda bu nedenle, bu tarihten 1 ile başlamak olmayabilir Perşembe ve Perşembe'den sayma gün başlayacak, çıktıda görünen st Nisan might olmak 28 inci veya 29 inci Mart, kodu çalıştırmak zaman bu yüzden 28 den sayım gün başlayacak th karşı 1 kadar sonra mart ve herhangi günlerde st Nisan. Bu günler sıfır olarak sayılacak ve çıktıda bu sıfırları göreceksiniz ve aynısı ay sonu için de geçerli.
  • Bu nedenle, 1-30 tarihi hariç, önceki ve sonraki tüm tarihler çıktıda sıfır olarak görünecektir.

Adım 4) Aylar veya hafta içi gibi yerel sistemden verileri alabilirsiniz.

  • Buradaki çıktı, yerel sistemden ayın adını yazdırdığımızı gösteriyor. Aynı şekilde, hafta içi ismini de aşağıda gösterildiği gibi alabilirsiniz.
  • Çıktı, yerel sisteme bağlı olacaktır, varsayalım yerel sisteminiz başka ülkelerden biriyse, çıktıyı o ülkenin yerel ayarlarına göre verecektir. Burada aylarımız var, bu yüzden bir fark olmayacak ama bir hafta veya günse, kesinlikle farklı olacaktır.

Adım 5) Tüm yıl için belirli bir günün listesini getirebilirsiniz. Örneğin, haftanın her Pazartesi günü bir denetim günü vardır. Her ayın ilk pazartesi gününü bilmek istiyorsunuz. Bu kodu kullanabilirsiniz

  • mycal = calendar.monthcalendar (2025, month), ay için takvim oluşturacak
  • Week1 ve week2 değişkenlerini takvimin Birinci ve ikinci haftasına ayarlayın
  • 1. Hafta'nın Pazartesi içerip içermediğini kontrol edin, denetim gününü ayarlayın
  • İkinci haftanın ilk Pazartesi günü olarak belirlenen başka bir denetim günü
  • Çıktı, o aya denk gelen ilk Pazartesi gününü gösterir.
  • Bu Cal nesnesinin uzunluğu, ayda kaç hafta olduğuna bağlı olarak belirli bir uzunlukta olacak. Bizim durumumuzda, haftanın ilk Pazartesi günü en sık ilk hafta olacağı için bir veya iki olacak, ancak değilse ikinci haftayı düşünün. Neden ikinci haftayı da düşündüğümüzü ayrıntılı olarak görelim.
  • Burada takvimin sabit Pazartesi gününü kullanıyoruz, takvim nesnesi size Pazar, Pazartesi, Salı vb. Temsil eden sabitleri verir. Bunları daha önce görmüştük. Öyleyse, eğer birinci haftada Pazartesi sabiti ile temsil edilen gün 0'a eşit değilse, sıfırların başka bir aya ait günler anlamına geldiğini hatırlayın. Yani bu durumda sıfırsa, önceki aya ait bir Pazartesi olacak. Ancak ilk Pazartesi 0'a eşit değilse, bu, denetim günümün birinci hafta içinde olacağı anlamına gelir. Aksi takdirde, 0 ise, o zaman ilk Pazartesi ayın ilk haftasında değil, ikinci pazartesi günü olmalıdır.
  • Öyleyse, tamam diyorum, denetim günü değişkenimi ikinci hafta ile temsil edilen Pazartesi olacak şekilde ayarlayın. Bu nedenle, denetim günü, birinci veya ikinci hafta için gün ne olursa olsun geri gelecektir.

İşte tam kod

Python 2 Örneği

takvimi içe aktar# Düz metin takvimi oluşturunc = calendar.TextCalendar (takvim.THURSDAY)str = c.formatmonth (2025, 1, 0, 0)baskı str# HTML formatlı bir takvim oluşturunhc = calendar.HTMLCalendar (takvim.THURSDAY)str = hc.formatmonth (2025; 1)baskı str# bir ayın günlerinde döngü# sıfır, haftanın gününün bir sonraki ayda veya çakışan bir ayda olduğunu gösteriri c.itermonthdays için (2025, 4):yazdır ben# Takvim, yerel gün ve ay adlarına göre bilgi verebilir (tam ve kısaltılmış formlar)calendar.month_name içindeki ad için:baskı adıcalendar.day_name gün için:baskı günü# bir kurala göre günleri hesaplayın: Örneğin her ayın ikinci Pazartesi günü bir denetim günü# Her ayın hangi günler olacağını hesaplayın, burada gösterildiği gibi komut dosyasını kullanabilirizaralıktaki ay için (1, 13):# Ayı temsil eden haftaların bir listesini alırmycal = calendar.monthcalendar (2025, ay)# İlk PAZARTESİ ilk iki hafta içinde olmalıdırweek1 = mycal [0]week2 = mycal [1]eğer hafta1 [calendar.MONDAY]! = 0:denetim günü = 1. hafta [calendar.MONDAY]Başka:# ilk PAZARTESİ ilk hafta değilse, ikinci hafta olmalıdırdenetleme günü = hafta2 [calendar.MONDAY]"% 10s% 2d"% yazdırın (takvim.ay_adı [ay], denetim günü)

Python 3 Örneği

takvimi içe aktar# Düz metin takvimi oluşturunc = calendar.TextCalendar (takvim.THURSDAY)str = c.formatmonth (2025, 1, 0, 0)baskı (str)# HTML formatlı bir takvim oluşturunhc = calendar.HTMLCalendar (takvim.THURSDAY)str = hc.formatmonth (2025; 1)baskı (str)# bir ayın günlerinde döngü# sıfır, haftanın gününün bir sonraki ayda veya çakışan bir ayda olduğunu gösteriri c.itermonthdays için (2025, 4):baskı (i)# Takvim, yerel gün ve ay adlarına göre bilgi verebilir (tam ve kısaltılmış formlar)calendar.month_name içindeki ad için:baskı (isim)calendar.day_name gün için:baskı (gün)# bir kurala göre günleri hesaplayın: Örneğin her ayın ikinci Pazartesi günü bir denetim günü# Her ayın hangi günler olacağını hesaplayın, burada gösterildiği gibi komut dosyasını kullanabilirizaralıktaki ay için (1, 13):# Ayı temsil eden haftaların bir listesini alırmycal = calendar.monthcalendar (2025, ay)# İlk PAZARTESİ ilk iki hafta içinde olmalıdırweek1 = mycal [0]week2 = mycal [1]eğer hafta1 [calendar.MONDAY]! = 0:denetim günü = 1. hafta [calendar.MONDAY]Başka:# ilk PAZARTESİ ilk hafta değilse, ikinci hafta olmalıdırdenetleme günü = hafta2 [calendar.MONDAY]baskı ("% 10s% 2d"% (takvim.ay_adı [ay], denetim günü))

Özet:

  • Python'da, başlamak için ayın gününü değiştirebileceğiniz için takvimi istediğiniz şekilde biçimlendirebilirsiniz.
  • Takvimi HTML formatında yazdırın
  • Aylar veya hafta içi gibi yerel sistemden verileri alın
  • Bütün bir yıl için belirli bir günün listesini getir