Şimdilik bana sanat eseri gibi gelen, geliştirmelik ödev.
############3 2 tarih arasındaki gün sayısını bul.
#Kullanıcıdan alınan tarih bilgisini Gün//Ay//Yıl şeklinde istedim.
tarih_1 = input("(Gün/Ay/Yıl)Tarih 1: ")
tarih_2 = input("(Gün/Ay/Yıl)Tarih 2: ")
#Henüz istediğim sayıda karakter girilmediğinde,\
#bilgiyi otomatik düzeltecek kodu yazamadığım için böyle bir uyarı yazdım.
while len(tarih_1) <= 11 and len(tarih_2) <= 11:
print("Örnek tarih: 01//06//2020 şeklinde olmalıdır.")
break
gun_sayisi_yil = 365 #Şu an bir işe yaramayan değişken tanımları,
gun_sayisi_ay = 30 #ama kullanacağım
#Bu kısımda karakter dizisi içinden ilgili kısımları parçalayıp hesap yapıyorum
#Ve bu kısmın kodları, eğer girilen tarih bilgileri uygun formatta değilse,
#gelen ValueError yüzünden hata üretiyor. O yüzden Try-Except blokları içerisine aldım.
try:
#değişken tanımları, girilen tarihten bilgisinden parçaladıklarım.
gun_fark = int(tarih_1[0:2]) - int(tarih_2[0:2])
ay_fark = int(tarih_1[4:6]) - int(tarih_2[4:6])
yil_fark = int(tarih_1[8::]) - int(tarih_2[8::])
toplam_gun = gun_sayisi_yil * yil_fark + gun_sayisi_ay * ay_fark + gun_fark
#ay-gün farklarını mutlak değer şeklinde hesaplamak için kurduğum if else blokları.
if int(tarih_1[0:2]) <= int(tarih_2[0:2]):
gun_fark = int(tarih_2[0:2]) - int(tarih_1[0:2])
else:
pass
if int(tarih_1[4:6]) <= int(tarih_2[4:6]):
ay_fark = int(tarih_2[4:6]) - int(tarih_1[4:6])
else:
pass
if int(tarih_1[8::]) <= int(tarih_2[8::]):
yil_fark = int(tarih_2[8::]) - int(tarih_1[8::])
print("Gün farkı: ", gun_fark)
print("Ay farkı: ", ay_fark)
print("Yıl farkı: ", yil_fark)
print("Toplam Gün: ", toplam_gun)
except ValueError:
print("Hata türü: Yanlış değer girdiniz.", ValueError)
pass