Yazdığım ufak program için Yardım

Merhabalar Python öğrenmeye yeni başladım ve kendi başıma ufak tefek şeyler yazmaya çalışıyorum yazbel’in python’la alakalı olan kitabından yardımlar alıyorum.

print("Hoş geldiniz" , "-" * 3)
print("#" * 40)
aylık_sarfiyat = float(input("Kaç m3 Doğalgaz Harcadınız : "))
fatura_tutarı = float(input("Toplam Bedel Kaç tl : "))
birim_fiyat = fatura_tutarı / aylık_sarfiyat
mart = mayis = temmuz = agustos = ekim = aralik = 31
nisan = haziran = eylul = kasim = 30 
subat = 28
ay_sec = input("Hangi Ay: ")
if "1" = ay_sec == mart:
    deger = ay_sec
    print (deger)

Aldığım Hata ise :

if "1" = ay_sec == mart:
SyntaxError: invalid syntax

yapmak istediğim ay_sec değişkeninin içine 1 yazıldığında mart değişkenine denk olsun yani 31 olsun ve onu yazdırabiliyim galiba konuyu biraz yanlış anladığımdan dolayı yapamadım.

Yardımcı Olursanız Sevinirim.

if ay_sec == "1":
    mart = 31

Sadece buraya bakarak söylüyorum.

Programın amacını anlatırsanız daha iyi yardımcı olabilirim.

Teşekkürler Sorunumu Şu şekilde çözdüm

if ay_sec == “1”:
print(mart)

Programın Son Halini Atmak İstedim.

Programın Amacı Doğalgaz birim fiyatını öğrenmek , ay ismine göre günlük ve aylık fiyat öğrenmek

Tek sıkıntısı else komutu çalışmıyor :sweat_smile:

print("Hoş geldiniz" , "-" * 3)
print("#" * 40)
print("Kullanmamanız Gerekenler : virgül , büyük harf , alakasız kelimeler")
print("Kullanmanız Gerekenler : Nokta , küçük harf , yerine uygun kelimeler, türkçe harfler.")
aylık_sarfiyat = float(input("Kaç m3 Doğalgaz Harcadınız : "))
fatura_tutarı = float(input("Toplam Bedel Kaç tl : "))
birim_fiyat = fatura_tutarı / aylık_sarfiyat
print("Birim Fiyatı : " , birim_fiyat)
mart = mayis = temmuz = agustos = ekim = aralik = 31
nisan = haziran = eylul = kasim = 30
subat = 28
ay_sec = input("Hangi Ay: ")
if ay_sec in ("ocak"or "mart"or"mayıs" or "temmuz" or "agustos" or "ekim" or "aralık"):
    gunluk_sarfiyat = aylık_sarfiyat / mart
    print("Günlük ortalama doğalgaz sarfiyatı : ",gunluk_sarfiyat)
    nisan_faturası = birim_fiyat * gunluk_sarfiyat * nisan
    print("30 çeken aylarda tahmini fiyat", nisan_faturası)
    mart_faturası = birim_fiyat * gunluk_sarfiyat * mart
    print("31 çeken aylarda tahmini fiyat", mart_faturası)
    subat_faturası = birim_fiyat * gunluk_sarfiyat * subat
    print("28 çeken aylarda tahmini fiyat", subat_faturası)
elif ay_sec in  ("nisan" or "haziran" or "eylül" or "kasım"):
    gunluk_sarfiyat = aylık_sarfiyat / haziran
    print("Günlük ortalama doğalgaz sarfiyatı : ",gunluk_sarfiyat)
    nisan_faturası = birim_fiyat * gunluk_sarfiyat * nisan
    print("30 çeken aylarda tahmini fiyat", nisan_faturası)
    mart_faturası = birim_fiyat * gunluk_sarfiyat * mart
    print("31 çeken aylarda tahmini fiyat", mart_faturası)
    subat_faturası = birim_fiyat * gunluk_sarfiyat * subat
    print("28 çeken aylarda tahmini fiyat", subat_faturası)
elif (ay_sec == "şubat"):
    gunluk_sarfiyat = aylık_sarfiyat / subat
    print("Günlük ortalama doğalgaz sarfiyatı : ",gunluk_sarfiyat)
    nisan_faturası = birim_fiyat * gunluk_sarfiyat * nisan
    print("30 çeken aylarda tahmini fiyat", nisan_faturası)
    mart_faturası = birim_fiyat * gunluk_sarfiyat * mart
    print("31 çeken aylarda tahmini fiyat", mart_faturası)
    subat_faturası = birim_fiyat * gunluk_sarfiyat * subat
    print("28 çeken aylarda tahmini fiyat", subat_faturası)
else :
    print("Doğru Ayı Giriniz")

Her şey normal görünüyor, nasıl bir hata alıyorsunuz veya hata alıyor musunuz?

Her şeyi çözdüm Teşekkürler Sadece hata aldığım yer kullanıcıdan istediğim şeyi alırken yanlış bir şey yazdığında hata vermiyor en son veri yazıyor

else :
print(“Doğru Ayı Giriniz”)

Bunu yazmıyor.

Ekran tısı

Bunun manasi
(ay_sec == "nisan") or (ay_sec == "haziran") ...
degil,
(ay_sec == "nisan") or ("haziran")
yani kisaca “True”.


if’teki type coercion bir can daha aldi. Kim savunuyordu? :​)

3 Beğeni

Hehe, doğru.


elif ay_sec == "nisan" or "haziran" or "eylül" or "kasım":

yerine şöyle bir şey kullanabilirsiniz:

elif ay_sec in ("nisan", "haziran", "eylül", "kasım"):
2 Beğeni

elif ay_sec in (“nisan”, “haziran”, “eylül”, “kasım”):

Bu daha iyi gibi geldi hepinize teşekkür ederim.

Bu şekilde son sorunda çözülmüş oldu :smiley:

Zaten diğeri istediğiniz gibi çalışmıyordu, @aib bahsetmiş.

1 Beğeni

Aynen sonradan fark ettim bende geç olsun da güç olmasın. Yavaş yavaş öğrenicez herhalde :sweat_smile: