Python Datetime: Tarihler ve Saatlerle Çalışmak
Python'da tarihleri, saatleri, saat dilimlerini ve hesaplamaları nasıl kullanacağınızı öğrenin. Datetime ve timedelta'yı kullanarak biçimlendirme, ayrıştırma ve aritmetik konusunda uzmanlaşın.
Genel Bakış
Artık yıllar, gün ışığından yararlanma ayarlamaları ve farklı saat dilimi biçimleri nedeniyle tarih ve saatlerin işlenmesi yazılım geliştirmede bilinen bir zorluktur. Python bu zorlukları yerleşik 'datetime' modülüyle çözer. Bu modül, zamansal verileri temiz bir şekilde temsil eden ve işleyen, tarih hesaplamalarını basitleştiren "tarih", "saat", "tarihsaat" ve "saat dilimi" gibi sağlam bir nesne sınıfları seti sağlar.
En yaygın görevlerden biri, tarihleri dizelere (biçimlendirme) ve dizeleri tarihlere (ayrıştırma) dönüştürmektir. Python bunun için iki ana yöntem kullanır: `.strftime()` (dize biçimi saat), biçimlendirme kodlarını kullanarak (yıl için '%Y', ay için '%m' ve gün için '%d' gibi) bir tarihsaat nesnesini okunabilir bir dizeye dönüştürür. Bunun tersine, `datetime.strptime()` (dize ayrıştırma süresi), bir ham dize girişini, eşleşen bir format şablonunu temel alarak bir tarih saat nesnesine ayrıştırır; bu, günlükleri veya API girişlerini okurken hayati önem taşır.
Tarih matematiğinin gerçekleştirilmesi de 'timedelta' nesnesi kullanılarak tamamen desteklenir. 'Timedelta' bir süreyi temsil eder (ör. 7 gün, 4 saat). Geçmiş veya gelecek tarihleri hesaplamak için (son kullanma tarihi belirlemek gibi) bir "tarihsaat"e "zaman deltası" ekleyebilir veya çıkarabilirsiniz. Birden fazla saat dilimiyle çalışırken, saat dilimini tanıyan nesnelerin ("zoneinfo" veya "timezone.utc" gibi) kullanılması, tarih karşılaştırmalarının farklı sunucu konumları arasında doğru kalmasını sağlamak için kritik öneme sahiptir.
Kod ve Yürütme Çıkışı
Dizeleri datetime nesnelerine ayrıştırma ve timedelta kullanarak gelecekteki son tarihleri hesaplama.
from datetime import datetime, timedelta
# Define a specific fixed base date and time (for deterministic runs)
base_date = datetime(2026, 5, 25, 23, 45, 50)
print(f"Base Date/Time: {base_date}")
# Format datetime as string
formatted = base_date.strftime("%Y-%m-%d %H:%M:%S")
print(f"Formatted String: {formatted}")
# Parse string to datetime
date_str = "2026-12-25"
parsed_date = datetime.strptime(date_str, "%Y-%m-%d")
print(f"Parsed Date: {parsed_date}")
# Date arithmetic with timedelta
ten_days_later = base_date + timedelta(days=10)
print(f"Date 10 days later: {ten_days_later.strftime('%Y-%m-%d')}")Base Date/Time: 2026-05-25 23:45:50
Formatted String: 2026-05-25 23:45:50
Parsed Date: 2026-12-25 00:00:00
Date 10 days later: 2026-06-04Adım Adım Uygulama
- Deneme süresinin sona ermesini ve faturalandırma tarihlerini hesaplama
- Sunucu erişim günlüklerindeki zaman damgası dizelerini ayrıştırma
- Otomatik cron işlerini veya yinelenen raporları planlama
Sıkça Sorulan Sorular
Saf ve bilinçli tarih saat nesnesi nedir?
Saf bir tarihsaat nesnesi saat dilimi bilgisi içermez, oysa bilinçli bir tarihsaat nesnesi saat dilimi farklarını içerir, bu da onu uluslararası saat hesaplamaları için güvenli kılar.
İki tarih arasındaki farkı nasıl hesaplarım?
Bir tarihsaat nesnesini diğerinden çıkarmak, aralarındaki tam süreyi temsil eden bir timedelta nesnesi döndürür.
İlgili Konular
Python'un yerleşik matematik modülünün gücünü keşfedin. Trigonometrik fonksiyonlar, logaritmalar, yuvarlama yöntemleri ve sabitler hakkında bilgi edinin.
Python JSON AyrıştırmaPython'da JSON verilerini nasıl okuyacağınızı, yazacağınızı ve ayrıştıracağınızı öğrenin. json.loads, json.dumps ve JSON kodlayıcılarını/kod çözücülerini özelleştirme konusunda uzmanlaşın.
Önerilen Python Kaynakları
İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.
Python'da Bir Dizeyi Datetime'a Ayrıştırma
Python'da dizeleri tarihsaat nesnelerine nasıl dönüştüreceğinizi öğrenin. Strptime yönteminde uzmanlaşın, tarih dizelerini ayrıştırın, saat dilimlerini yönetin ve biçim hatalarını önleyin.
Python DateTime Biçimlendirme Hile Sayfası
Datetime, strftime ve strptime kullanarak Python'da tarih ve saatleri nasıl ayrıştıracağınızı ve biçimlendireceğinizi öğrenin.
Python vs JavaScript: Hangi Programlama Dili En İyisidir?
Python ve JavaScript arasında kapsamlı bir karşılaştırma. Sözdizimi farklılıklarını, performansı, kullanım örneklerini (arka uç ve ön uç) ve kodlama örneklerini keşfedin.