Python kodunda hata nerede?

dogukanGzc

Picopat
Katılım
10 Eylül 2024
Mesajlar
154
Çözümler
2
Python'da bir hesap makinesi yapmak istedim ve internetten böyle bir şey buldum buradaki hataları nasıl düzeltirim?

Kod:
ilkSayi = int(input("İlk Sayıyı Giriniz. "))

İkinciSayı = int(input("İkinci Sayıyı Giriniz.  "))

İslem = input("""Yapmak istediğiniz İşlemi Giriniz.

(Toplama: +, Çıkarma: -, Çarpma: x, Bölme: /)

""")


if islem = "+":

    print("Sonuç: "+ str(ilkSayi + İkinciSayı))


    elif islem = "-":

        print("Sonuç: " + str(ilkSayi - İkinciSayı))


        elif islem = "x"

        print("Sonuç: " + str(ilkSayi * İkinciSayı))


        elif islem = "/"

         print("Sonuç: " + str(ilkSayi / İkinciSayı))


Hata bu:

File "main.py", line 7
if islem = "+":
^
SyntaxError: invalid syntax


** Process exited - Return Code: 1 **
Press Enter to exit terminal
 
Son düzenleme:
İlk hata burda.

Asıl hatanız ise kıyaslamayı = ile yapmanız. == ile yapmalısınız. Bunun dışında koşul ifadelerinden sonra : kullanmalısınız, hepsinde yok.
 
Hocam olmadı
 
Olmaz. Çünkü mesajı kod bloğuna aldınız. Bilgisayarınızdan kopyalayıp öyle kod bloğuna yapıştırmalısınız. Bozuk şeyi kopyalayıp yapıştırdığınızda düzeltecek teknoloji daha XenForo'ya gelmedi.

Bu şekilde bende çalışıyor. Tabii çalışma tanımınıza bağlı.
Kod:
ilk_sayi = int(input("İlk Sayıyı Giriniz: "))
ikinci_sayi = int(input("İkinci Sayıyı Giriniz: "))
islem = input("""Yapmak istediğiniz İşlemi Giriniz.
(Toplama: +, Çıkarma: -, Çarpma: x, Bölme: /)
""")

if islem == "+":
    print("Sonuç: " + str(ilk_sayi + ikinci_sayi))
elif islem == "-":
    print("Sonuç: " + str(ilk_sayi - ikinci_sayi))
elif islem == "x":
    print("Sonuç: " + str(ilk_sayi * ikinci_sayi))
elif islem == "/":
    print("Sonuç: " + str(ilk_sayi / ikinci_sayi))
 

Eyvallah hocam çok teşekkür ederim.
 
Nereden öğreniyorsunuz bilmiyorum ama en azından şu tarz bir şekilde yazmanızı sağlayacak bir yerden öğrenmeye çalışın. 20 yıl önceki haliyle kullanmayın.
operator module'ü eklenebilirdi ama biraz fazla overkill olur gibi.

Kod:
num1 = int(input("İlk sayıyı giriniz: "))
num2 = int(input("İkinci sayıyı giriniz: "))
operator = input("""Yapmak istediğiniz işlemi giriniz.
(Toplama: +, Çıkarma: -, Çarpma: x, Bölme: /)
""")

operations = {
    "+": num1 + num2,
    "-": num1 - num2,
    "x": num1 * num2,
    "/": num1 / num2 if num2 != 0 else "Payda sıfır olamaz."
}

result = operations.get(operator, "Geçersiz işlem.")
print(f"Sonuç: {result}")
 

== ve : haricinde ilk elifi tab atarak yazdığından if içine atmış, attığınız kodda alt alta olunca çalışmıştır. Bir de yukarda belirlediği "İslem" in "i" si büyük, if ve eliflerdeki ise küçük olduğundan almamış.
 
Son düzenleme:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…