Python - İleri Seviye Python

Dates (Zamanlar)

Yayın tarihi :01-Ara-21
Bölüm kodlarını ve/veya veri setlerini indir.

Zaman, saat ve tarih ile ilgili işlemler yapmak için datetime modülünü kullanırız. Bunun için ilk olarak modülü import edelim.

import datetime

Datetime modülü altında bulunan özelliklere göz atalım;

print(dir(datetime))

Çıktı:

['MAXYEAR', 'MINYEAR', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', 
'__package__', '__spec__', 'date', 'datetime', 'datetime_CAPI', 'sys', 'time', 'timedelta', 'timezone', 
'tzinfo']

3 başlığı inceleyelim;

  1. date: tarihle ilgili işlemler yapabilmemizi sağlayan fonksiyonları barındırır.
  2. time: zaman/saatle ilgili işlemler yapabilmemizi sağlayan fonksiyonları barındırır.
  3. datetime: date ve time özelliklerinin birleşiminden oluşan fonksiyonları barındırır.
  • now(): şuanki zamanı veren ifadedir.
    nowTime=datetime.datetime.now()
    print(nowTime)

    Çıktı:

    2021-12-13 21:52:55.746479
    print(nowTime.year)
    print(nowTime.month)
    print(nowTime.day)
    print(nowTime.hour)
    print(nowTime.minute)
    print(nowTime.second)

    Çıktı:

    2021
    12
    13
    21
    52
    55
  • today() : Bugünün zamanını verir. now() ile aynı işlevdedir.
    datetime.datetime.today()

    Çıktı:

    datetime.datetime(2021, 12, 13, 21, 56, 47, 89779)
    
  • ctime(): içinde bulunduğumuz ana ilişkin tarih ve zaman bilgilerini daha okunaklı bir şekilde görmemizi sağlar.
    nowTime=datetime.datetime.now()
    datetime.datetime.ctime(nowTime)

    Çıktı:

    'Mon Dec 13 22:00:31 2021'
  • strftime(): Tarih ve zaman bilgilerini ihtiyaç doğrultusunda biçimlendirme imkanı sunar. strftime(zaman_değeri,biçimlendirici) şeklinde kullanılır. Biçimlendiriciler listesi;
    • %a: hafta gününün kısaltılmış adı
    • %A: hafta gününün tam adı
    • %b: ayın kısaltılmış adı
    • %B: ayın tam adı
    • %c: tam tarih, saat ve zaman bilgisi
    • %d: sayı değerli karakter dizisi olarak gün
    • %j: tarihin yılın kaçıncı gününe geldiğini gösteren bir sayı
    • %m: sayı değerli bir karakter dizisi olarak ay
    • %U: tarihin yılın kaçıncı haftası olduğunu gösteren bir sayı
    • %y : yılın son rakamı
    • %Y: yılın tam hali
    • %x: tam tarih bilgisi
    • %X: tam saat bilgisi
      nowTime=datetime.datetime.now()
      datetime.datetime.strftime(nowTime,"%x")

      Çıktı:

      '12/13/21'
      nowTime=datetime.datetime.now()
      datetime.datetime.strftime(nowTime,"%A

      Çıktı:

      'Monday'

Dikkat edilirse tarih çıktıları ingilizce olarak görünmektedir. Bu durumda istenilen dilde çıktı almak için locate modülünün içe aktarılması gerekmektedir.

import locale
locale.setlocale(locale.LC_ALL,"")

Çıktı:

'Turkish_Turkey.1254'

Bu işlem sonucunda strftime() fonksiyonun sonucunu Türkçe olarak alabiliriz.

nowTime=datetime.datetime.now()
datetime.datetime.strftime(nowTime,"%A

Çıktı:

'Pazartesi'

Yukarıda bahsettiğimiz biçimlendiricileri çoklu bir şekilde de kullanabiliriz.

nowTime=datetime.datetime.now()
datetime.datetime.strftime(nowTime,"%d %B %Y")

Çıktı:

'13 Aralık 2021'

İki tarih arasındaki farkı bulmak

nowTime=datetime.datetime.now()
oldTime=datetime.datetime(2000,1,1)
dif=nowTime-oldTime
print(dif)
print(dif.days)

Çıktı:

8017 days, 22:24:12.515262
8017
Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.