Sürekli olarak invalid syntax hatası alıyorum!

Başlatan Kanta Mizuno, 11 Mart 2019 - 16:31:37

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Kanta Mizuno

Arkadaşlar forumda ve python dilinde yeniyim. Aşağıda basit bir faktöriyel hesaplayan programda sürekli olarak else'in olduğu satırda invalid syntax hatası veriyor. Neyi fark edemiyorum burada anlamadım. Sinirden su kaynatmak üzereyim.

Yardımcı olursanız sevinirim.

faktoriyel=1
while True:
    sayi= int(input (" girdiginiz deger negatif olamaz"))
            if (sayi <= 0):
                print ("Negatif yada sıfır olamaz")
            else:
                for i in range(1, sayi + 1)
                faktoriyel= faktoriyel*i
break

Empat

Python bilgim pek yok, fakat aldığınız hatayı satır numarasıyla beraber tam olarak paylaşırsanız yardımcı olabilirim.

Ayrıca bir tahminim var. O en sondaki break'ın amacı nedir? Ben bir anlam veremedim. Break ifadesini kaldırıp deneyin.

Alternatif olarak size sorununuzu çözecek bir yol gösterebilirim.

Facebook'ta İngilizce ve Türkçe içerikli Python grupları var. Bu gruplarda birçok aktif ve yardımsever üye var.

Sorununuzu orada dile getirirseniz kesinlikle yardımcı olacaklardır. İngilizceniz varsa İngilizce Python gruplarından yardım alma olasılığınız çok daha büyük.

Tabii Türkçe gruplardan da yardım alabilirsiniz. Gruplara girerken soruları cevaplarsanız, gruba dahil olmanıza izin vereceklerdir.
Everything for me is just Peace - Love - Coding. Also, as they say: I am a programmer, I have no life!

Amenofis

Girintilemeye dikkat etmelisin. "if" mantıksal olarak while döngüsünden bir kademe içerde olmalı. Sen 2 kademe içeri almışsın. Bir de for döngüsünün başlığına ":" koymamışsın. Son olarak "break" else'e ait olmalı.

faktoriyel=1
while True:
   sayi= int(input (" girdiginiz deger negatif olamaz: "))
   if (sayi <= 0):
      print ("Negatif yada sıfır olamaz")
   else:
      for i in range(1, sayi + 1):
         faktoriyel= faktoriyel*i
     
      print(faktoriyel)
      break




Empat

[mention=644795]@Amenofis[/mention]

Girintilemeye kod düzeni ve okunabilirliği açısından dikkat edilmeli. Girintilemenin hata sebebi olduğunu kastetmiyorsunuz sanırım?
Everything for me is just Peace - Love - Coding. Also, as they say: I am a programmer, I have no life!

Amenofis

Alıntı yapılan: Empat - 11 Mart 2019 - 22:29:57
[mention=644795]@Amenofis[/mention]

Girintilemeye kod düzeni ve okunabilirliği açısından dikkat edilmeli. Girintilemenin hata sebebi olduğunu kastetmiyorsunuz sanırım?
Kodu okursan eğer { }  gibi ayıraçlar olmadığını farkedeceksin. Python, kodun hangi bloğa ait olduğunu girintiye bakarak bulur ve girinti için 4 boşluk (tab değil) olmasını tavsiye eder.

Empat

[mention=644798]@Amenofis[/mention]

Bunu bilmiyordum. Bildiğim, PHP, Javascript dillerinde white space geçerli. Bilgi paylaşımı için teşekkürler.
Everything for me is just Peace - Love - Coding. Also, as they say: I am a programmer, I have no life!

programmer

IDE olarak PyCharm veya Visual Studio Code öneririm.  VSCode çok sayıda Python uzantısı var kurabileceğiniz.
Benim de sinir olduğum "indent" hatalarını yakalama konusunda yararlı olur. Tabiki henüz yapmak istediğiniz anlayıp düzeltme yapan bir yapay zeka eklentisi yok bildiğim kadarıyla.

Empat

[mention=644813]@programmer[/mention],
[mention=644784]@Kanta Mizuno[/mention]

Jetbrains'in her ürünü gibi PyCharm ürünü de muhteşeme yakın. Ben de tavsiye ediyorum.
Everything for me is just Peace - Love - Coding. Also, as they say: I am a programmer, I have no life!

coderman

Kodlarınızı paste.ubuntu.com üzerinde paylaşır hata ekran görüntüsünü de bize iletirseniz daha sağlıklı yardımda bulunabiliriz :)

Empat

[mention=645348]@coderman[/mention]

İletilerde kullanabileceğimiz code etiketleri varken ne gerek var pastebin vb. sitelere yapıştırmaya?

[mention=644784]@Kanta Mizuno[/mention]

Sorununuz çözüldüyse, konu başlığınızı "[ÇÖZÜLDÜ]" olarak işaretleyin lütfen.

"[ÇÖZÜLDÜ]" işaretlemesini nasıl yapacağınızı bilmiyorsanız buraya tıklayarak, "[ÇÖZÜLDÜ]" olarak işaretlemeyi öğrenebileceğiniz makaleye gidebilirsiniz.
Everything for me is just Peace - Love - Coding. Also, as they say: I am a programmer, I have no life!