Python datetime modülü örneği

Tunahan Mert07

Decapat
Katılım
24 Eylül 2021
Mesajlar
376
Çözümler
1
Yer
Antalya/Alanya
Daha fazla  
Cinsiyet
Erkek
Merhaba arkadaşlar, benim şu şekil de yapmak istediğim bir py programı var.
Doğum tarihi girilir...
Pazartesi günü doğmuşsunuz.
Eğer günümüzde doğsaydınız... Gününde doğardınız.

[CODE title="Yaptığım uygulama"]from datetime import datetime.
bugun = datetime.today()
bugun_2 = bugun.date()
hafta = ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"]

gun = int(input("Doğum gününüzü giriniz:"))
ay = int(input("Doğum ayınızı giriniz:"))
yil = int(input("Doğum yılınızı giriniz:"))

dogum_tarihi = datetime(day = gun , month = ay , year = yil)
dogulan_gun = hafta[dogum_tarihi.weekday()]
dogulan_gun_bugun = datetime(day = gun , month = bugun_2.month , year = bugun_2.year)
dogulan_gun_2 = hafta[dogulan_gun_bugun.weekday()]

print("{} Gününde doğdunuz.".format(dogulan_gun))
print("Günümüzde doğsaydınız {} gününde doğardınız.".format(dogulan_gun_2))[/CODE]

Fakat aynı günü veriyor kötü anlatımım için kusurabakmayın herhangi bir şekilde def fonksiyonu falan kullanmadan nasıl bu programı yapabilirim?
 
Merhaba arkadaşlar, benim şu şekil de yapmak istediğim bir py programı var.
Doğum tarihi girilir...
Pazartesi günü doğmuşsunuz.
Eğer günümüzde doğsaydınız... Gününde doğardınız.

[CODE title="Yaptığım uygulama"]from datetime import datetime.
bugun = datetime.today()
bugun_2 = bugun.date()
hafta = ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"]

gun = int(input("Doğum gününüzü giriniz:"))
ay = int(input("Doğum ayınızı giriniz:"))
yil = int(input("Doğum yılınızı giriniz:"))

dogum_tarihi = datetime(day = gun , month = ay , year = yil)
dogulan_gun = hafta[dogum_tarihi.weekday()]
dogulan_gun_bugun = datetime(day = gun , month = bugun_2.month , year = bugun_2.year)
dogulan_gun_2 = hafta[dogulan_gun_bugun.weekday()]

print("{} Gününde doğdunuz.".format(dogulan_gun))
print("Günümüzde doğsaydınız {} gününde doğardınız.".format(dogulan_gun_2))[/CODE]

Fakat aynı günü veriyor kötü anlatımım için kusurabakmayın herhangi bir şekilde def fonksiyonu falan kullanmadan nasıl bu programı yapabilirim?
Önce modülleri içe aktardığın ilk satırın sonunda yer alan noktayı sil. syntax error veriyor. Ben bir hata göremedim. Betiğin doğru çalışıyor gibi görünüyor sorununu açar mısın?
 
Önce modülleri içe aktardığın ilk satırın sonunda yer alan noktayı sil. Syntax error veriyor. Ben bir hata göremedim. Betiğin doğru çalışıyor gibi görünüyor sorununu açar mısın?

Sorunu çözdüm şu şekilde olacakmış teşekkürler.
Kod:
from datetime import datetime
bugun = datetime.today()
hafta = ["Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi","Pazar"]

gun = int(input("Doğum gününüzü giriniz:"))
ay = int(input("Doğum ayınızı giriniz:"))
yil = int(input("Doğum yılınızı giriniz:"))

dogum_gunu = datetime(year = yil , month = ay , day = gun)

week_day = hafta[dogum_gunu.isoweekday()]
x = datetime(2022,ay,gun)
week_day_2 = hafta[x.isoweekday()]

print("Doğduğunuz gün:",week_day)
print("Günümüzde doğsaydınız şu gün doğardınız:",week_day_2)
 
Yazdığınız kod çalışıyor ancak 1 gün öncesini gösteriyor. Ekrana çıkan günden bir sonraki günü yazdırdığımda istenilen şekilde çalıştırdı.

Python:
from datetime import datetime
bugun = datetime.today()
bugun_2 = bugun.date()
hafta = ["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"]

gun = int(input("Doğum gününüzü giriniz:"))
ay = int(input("Doğum ayınızı giriniz:"))
yil = int(input("Doğum yılınızı giriniz:"))

dogum_tarihi = datetime(day = gun+1 , month = ay , year = yil)
dogulan_gun = hafta[dogum_tarihi.weekday()]
dogulan_gun_bugun = datetime(day = gun+1 , month = bugun_2.month , year = bugun_2.year)
dogulan_gun_2 = hafta[dogulan_gun_bugun.weekday()]

print("{} Gününde doğdunuz.".format(dogulan_gun))
print("Günümüzde doğsaydınız {} gününde doğardınız.".format(dogulan_gun_2))
 

Geri
Yukarı