Çözüldü Bu Python kodunda hata nerede?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

alpersamur3

Hectopat
Katılım
10 Mayıs 2020
Mesajlar
156
Kodlar şöyle bir hata veriyor;
Python:
Traceback (most recent call last):
  File "C:/Users/HP/Desktop/Soru/sorunatör.py", line 30, in <module>
    Cevap_Sil()
  File "C:/Users/HP/Desktop/Soru/sorunatör.py", line 24, in Cevap_Sil
    del içerik[silincekbölüm]
IndexError: list assignment index out of range
Kodlar;
Python:
import random
sorular=open("sorular.txt","r")
sorusatırı=random.randint(1,7)
şimdikisorun=sorular.readlines(sorusatırı)
print(şimdikisorun)
cevap=input("Cevabı giriniz.")
cevaplar=open("cevaplar.txt","r")
cevabındoğrumu=cevaplar.readline(sorusatırı)
print("Cevap: ",cevabındoğrumu)
cevaplar.close()
cevapartın=cevap+'\n'
def soru_sil():
    oku = open("sorular.txt","r")
    icerik=oku.readlines()
    del icerik[sorusatırı-1]
    oku.close()
    yaz = open("sorular.txt","w")
    yaz.writelines(icerik)
    yaz.close()
def Cevap_Sil():
    oku = open("cevaplar.txt","r")
    içerik=oku.readlines()
    silincekbölüm=sorusatırı-1
    del içerik[silincekbölüm]
    oku.close()
    yaz = open("cevaplar.txt","w")
    yaz.writelines(içerik)
    yaz.close()
if cevapartın==cevabındoğrumu:
    Cevap_Sil()
    soru_sil()
    print("Cevabın Doğru")
if cevapartın!=cevabındoğrumu:
    print("Cevabın yanlış :( ")
Yardımcı olursanız sevinirim. Şimdiden teşekkürler.
 
Çözüm
Sorusatırı=random. Randint(1, 7)

Burayı sorusatırı=random.randint(0,6) yapmayı dene çünkü indeksleme 0'dan başlar.

"Silinecekbölüm" ne? Makine Türkçe karakter ile işlem yapamaz.

Yapabilir. Python ve C# değişken isimlerinde Türkçe karakter destekliyor.

Hata mesajında sıralamayla ilgili bir yanlışlığın olduğundan bahsediyor.

Var olmayan bir indekste işlem yapmaya çalıştığı için bu hatayı almış.
@Kerem00
Değişken isimlerinde tek destekliyor değil mi? Onun dışında desteklemiyor benim bildiğim.
Fonksiyon isimlerinde destekliyor mu emin değilim. Deniyorum şu an. Destekliyormuş.

İlla ki desteklemediği bir yer vardır fakat giriş seviyesinde Python her yerde Türkçe karakter destekliyor.

Not: İngilizce karakter kullanmanın daha doğru olduğunu inkar etmiyorum. Sadece Türkçe karakter desteklediğini ve konu sahibinin sorununun bundan kaynaklanmadığını belirtmek istedim.
 
@Kerem00 Ben zamanında deneme yaptığımda desteklemiyordu. Destekliyor ise iyi.

Neyse konu hata konusundan çok Türkçe karakter tartışmasına gidiyor. Burada bitirsek daha iyi gibi :)
 
Uyarı! Bu konu 6 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Geri
Yukarı