Aralık 7
2021
Yaz bak, sonra unutursun (Part1)
Python Tarih / Saat biçimleri
Python’ da bir şeyler yazarken neredeyse en çok uğraştıran konu tarihleri istediğim formata sokmak. Bu nedenle aşağıdaki kısa örnekleri buraya ekliyorum ilerde de dönüp bakabileyim diye.
Lokal zamanı ISO 8601 formatına çevirmek
*now yerine utcnow da kullanabilirisiniz.
import datetime
datetime.datetime.now().isoformat()
>>> 2021-12-06T14:28:23.382748
Lokal zamanı ISO 8601 formatına mikrosaniyeler olmadan çevirmek
import datetime
datetime.datetime.now().replace(microsecond=0).isoformat()
>>> 2021-12-06T14:30:43
UTC olan zamanı timezone bilgisi ile ISO 8601 formatına çevirmek
import datetime
datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc).isoformat()
>>> 2021-12-06T01:31:12.467113+00:00
Tarih verisini istediğiniz biçimde gösterebilmek için “strftime” özelliğini kullanarak tarih / saat verinizi biçimlendirebilirsiniz. Bunun için gerekli gösterim parametreleri aşağıdaki tabloda görüldüğü gibidir.
import datetime
x = datetime.datetime.now()
print(x.strftime("%Y-%m-%d %H:%M:%S"))
%a | Haftanın Günü Kısa gösterim | Wed |
%A | Haftanın Günü Uzun gösterim | Wednesday |
%w | Haftnın kaçıncı günü olduğu (0-6 arasında, 0 Pazar) | 3 |
%d | Ayın kaçıncı günü olduğu (01-31 arasında) | 31 |
%b | Ayın adı Kısa gösterim | Dec |
%B | Ayın adı Uzun gösterim | December |
%m | Ayın sayısal gösterimi 01-12 | 12 |
%y | Yılın son iki hanesi | 18 |
%Y | Yılın uzun gösterimi | 2018 |
%H | Saat 00-23 arası | 17 |
%I | Saat 00-12 arası | 5 |
%p | AM/PM Bilgisi | PM |
%M | Dakika 00-59 arası | 41 |
%S | Saniye 00-59 arası | 8 |
%f | Milisaniye 000000-999999 arası | 548513 |
%z | UTC offset | 100 |
%Z | Timezone | CST |
%j | Yılın kaçıncı günü olduğu 001-366 arası | 365 |
%U | Haftanın ilk gününü pazar kabul ederek yılın kaçıncı haftası olduğu 00-53 arası | 52 |
%W | Haftanın ilk gününü pazartesi kabul ederek yılın kaçıncı haftası olduğu 00-53 arası | 52 |
%c | Yerel gösterimle tarih ve saat bilgisi | Mon Dec 31 17:41:00 2018 |
%C | Yüzyıl gösterimi | 20 |
%x | Yerel gösterimle sayısal tarih bilgisi | 12/31/2018 |
%X | Yerel gösterimle saat bilgisi | 17:41:00 |
%% | “%” İşareti | % |
%G | ISO 8601 formatında yıl | 2018 |
%u | ISO 8601 formatında haftanın günü (1-7) | 1 |
%V | ISO 8601 formatında hafta sayısı (01-53) | 1 |