Biçimlendirme ve Ayrıştırma
strftime ve strptime kullanın
Biçimlendirme ve Ayrıştırma, CoddyKit'te ücretsiz bir Python Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Python Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Python Academy kursu toplamda 4 dersten oluşur.
Biçimlendirme ve ayrıştırma neden gerekli?
Bilgisayarlar tarihleri nesne olarak saklar, ancak insanlar onları metin olarak okur. Biçimlendirme, bir tarih-saati dizeye dönüştürür; ayrıştırma ise bir dizeyi yeniden tarih-saate dönüştürür.
strftime= dize FROM zaman (biçimlendirme).strptime= dize PARSE zaman (ayrıştırma).
from datetime import datetime
now = datetime(2026, 5, 30, 14, 5)
print(now)İlk strftime kullanımınız
Bir tarih-saat üzerinde .strftime(format) çağrısı yapın. Biçim kodları % ile başlar: %Y dört basamaklı yılı, %m ayı, %d ise günü belirtir.
from datetime import datetime
d = datetime(2026, 5, 30)
print(d.strftime('%Y-%m-%d'))Zaman bölümünü biçimlendirme
Zaman kodları: %H saati (00-23), %M dakikayı, %S ise saniyeyi belirtir. Bunları istediğiniz gibi düz metinle birleştirebilirsiniz.
from datetime import datetime
d = datetime(2026, 5, 30, 9, 7, 3)
print(d.strftime('%H:%M:%S'))İnsan dostu adlar
Bazı kodlar adlar üretir: %A haftanın tam gününü, %B ayın tam adını, %b ise ayın kısaltılmış adını belirtir.
from datetime import datetime
d = datetime(2026, 5, 30)
print(d.strftime('%A, %B %d, %Y'))12 saatlik saatler ve AM/PM
12 saatlik saat gösterimi için %I, AM veya PM için %p kullanın. Bu gösterim, kullanıcıya sunulan ekranlarda yaygındır.
from datetime import datetime
d = datetime(2026, 5, 30, 14, 30)
print(d.strftime('%I:%M %p'))strptime ile ayrıştırma
datetime.strptime(text, format), bir dizeyi okuyarak tarih-saat nesnesine dönüştürür. Biçim, kod kod metinle tam olarak eşleşmelidir.
from datetime import datetime
text = '2026-05-30'
d = datetime.strptime(text, '%Y-%m-%d')
print(d)
print(type(d))Tarih ve saati birlikte ayrıştırma
Tam bir zaman damgasını ayrıştırmak için biçime zaman kodlarını ekleyin. Metindeki her ayırıcı (tire, boşluk, iki nokta) kalıpta da yer almalıdır.
from datetime import datetime
text = '30/05/2026 14:05'
d = datetime.strptime(text, '%d/%m/%Y %H:%M')
print(d.year, d.hour, d.minute)Gidiş-dönüş: ayrıştırma, ardından biçimlendirme
Yaygın bir iş akışı, gelen metni ayrıştırmak, üzerinde bazı işlemler yapmak ve ardından çıktıya uygun şekilde, hatta farklı bir düzende yeniden biçimlendirmektir.
from datetime import datetime
raw = '2026-05-30'
d = datetime.strptime(raw, '%Y-%m-%d')
pretty = d.strftime('%B %d, %Y')
print(pretty)ISO biçimi kısayolu
.isoformat(), standart ISO 8601 dizesini üretir; datetime.fromisoformat() ise biçim kodlarına gerek kalmadan bu dizeyi yeniden okur.
from datetime import datetime
d = datetime(2026, 5, 30, 14, 5)
s = d.isoformat()
print(s)
back = datetime.fromisoformat(s)
print(back == d)Ayrıştırma hatalarını ele alma
Metin biçimle eşleşmezse strptime bir ValueError yükseltir. Girdi hatalı biçimlendirilmiş olabilirse bunu try/except içine alın.
from datetime import datetime
try:
datetime.strptime('not-a-date', '%Y-%m-%d')
except ValueError as e:
print('Could not parse:', e)Yılın günü ve daha fazlası
Ek kodlar: %j yılın gününü (001-366), %w ise haftanın gününü sayı olarak (0=Pazar) belirtir. Bunlar raporlar için kullanışlıdır.
from datetime import datetime
d = datetime(2026, 5, 30)
print('Day of year:', d.strftime('%j'))Hızlı Kontrol
'2026-05-30' dizesine sahipsiniz. Hangi çağrı bu dizeyi bir datetime nesnesine dönüştürür?
Özet: Biçimlendirme ve ayrıştırma
Unutmayın:
strftime(fmt)bir tarih-saati bir dizeye INTO dönüştürür.strptime(text, fmt)bir dizeyi bir tarih-saate INTO dönüştürür.- Yaygın kodlar: tarihler için
%Y %m %d, saatler için%H %M %S, adlar için%A %B. isoformat()vefromisoformat()ISO standardını otomatik olarak işler.
from datetime import datetime
d = datetime.strptime('2026-05-30 14:05', '%Y-%m-%d %H:%M')
print(d.strftime('%A at %I:%M %p'))Sıkça Sorulan Sorular
“Biçimlendirme ve Ayrıştırma” dersi ücretsiz mi?
Evet — “Biçimlendirme ve Ayrıştırma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Python Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Python Academy kursu toplamda 4 dersten oluşur.
“Biçimlendirme ve Ayrıştırma” dersinde ne öğreneceğim?
strftime ve strptime kullanın Python Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Python Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Python Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Biçimlendirme ve Ayrıştırma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Python Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Python Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- date, time, datetime
- Timedelta ve Aritmetik
- Biçimlendirme ve Ayrıştırma
- zoneinfo ile Saat Dilimleri