Coursera python görevi düzeltemiyorum

Merhaba arkadaşlar! Daha çok yeniyim ve proglamayı coursera üzerinden öğreniyorum. Buradaki türkçe kaynakları gördüğümde çok mutlu oldum, umarım daha fazla kişiye ulaşır.


Görev bu ve bu şekilde yaptım ,11. dize için IndexError: list index out of range on line 11
hatasını alıyorum, derslere geri döndüm internetten yardım aldım ama bir türlü geçerli kabul ettiremiyorum. Nasıl düzeltilir yardım ederseniz çok sevinirim,hepinize kolay gelsin :slight_smile:

Merhaba. Kodunuzu burada anlatıldığı şekilde atın:

Hata vermesinin nedeni word[0] diye bir şeyin olmaması. Büyük ihtimalle split yaptığınız line boş bir satır.
Açıklamadan anladığım kadarıyla “From” ile başlayan satırın ikinci kelimesini yani kullanıcı adını almanız isteniyor. İlk for döngüsünün şu şekilde olması gerektiğini düşünüyorum:

for line in fh:
    if line.startswith("From"):
        word=line.split()
        liste1.append(word[1])

çok teşekkürler düzelttim onu bir hataymış şimdi fark ettim ama sorunun sebebi bu değil galiba çünkü yine aynı hatayı veriyor. Youtube üzerinden bir kaynak buldum ona göre yaptım benim yazdığıma çok benzer ama yine aynı hatayı alıyorum başka ne olabilir sebebi ?

wordprint edip nasıl bir karakter dizisi olduğuna bakın isterseniz.

onu da deniyorum ama coursera da bu alan python playground olarak geçiyor ve programınız tamamen doğru olmadan çıktı vermiyor, print fonksiyonu ile kontrol de yapamıyorum

Kodunuzda line, "From" ile başlıyorsa continue çalışsın gibi bir ifade var. Neden continue dediniz? Email'i, içinde From olan line değişkeninden almanız gerekmiyor mu?

Kodu kendi yorumlayıcınızda deneyin.

Maalesef deneyemiyorum çünkü aynı dosyaya sahip değilim, playground dosyaya site verisinden ulaşıyor muhtemelen. Continue ifadesini genelde else geçmeden önce kullanıyorum fakat bu kodu ben yazmadım youtube bir videodan yardım yapamayınca,her şeyi noktası noktasına yazıyorum fakat kabul etmiyor. Böyle basit bir dert için çok uğraştırdım sizi fakat işin ucunda sertifika var, linki bırakıyorum buraya https://www.youtube.com/watch?v=15KzYoNJay0
(continue silince bad input hatası verdi bi üst satır için)
bu da kodun son hali benim yazdığım değil ama bana da daha doğru gözüktü sonradan

Belki de açtığınız txt dosyası hatalıdır. Ya da doğru açılmamıştır.

fh=open(da,"r+")

Bu şekilde düzeltip tekrar bir deneyin.

Sizden istenen görevi okuduğum zaman, içinde "From" sözcüğü geçen satırları kullanmanız gerektiğini anlamıştım. Ama siz "From" ile başlayan satırları continue ile yok sayıyorsunuz.

İsterseniz, yazdığınız kodları buraya aktarın, size verilen görevin bir canlandırmasını yapalım.

Yazacağınız kodu denemek için soruda anlatılan şekilde ufak bir dosya oluşturabilirsiniz.

Arkadaşlar üzülerek söylüyorum ki copy paste ile grade ettirdim bir şekilde ama hala anlamadım hatam nerdeydi dediklerinizi yaptım fakat yine düzelmedi benim yazdığım üzerinden.En azından bir aciliyeti yok şimdilik konunun, yardımlarınız için de çok teşekkür ederimm :slight_smile:
Son olarak ‘continue’ ifadesinin gerekliliği çok kafamı karıştırdı. Ben şüphe etmeden yazıyorum oraya çünkü eğer(if). böyle böyleyse devam et(continue) demeden else(ya da ) methoduna geçiş yapamazmışız gibi geliyor,nasıl yok saymış oluyorum anlamadım. Saçma sorularsa kusura bakmayın çok yeniyim ve her şeyin mantığını anlamaya çalışıyorum :confused:

continue devam et anlamına geliyor ama, else satırından devam etmez, for döngüsünün başına gelir. continue deyiminin altında kalan satırlara geçilmez.

şimdi oldu teşekkürler.

Bu, python playground’un cozum gelistirmek icin dogru bir alet olmadigini gosteriyor. Bilgisayara python yuklemek veya playground’un cikti veren bir alternatifini bulmak su kodu yazmaktan daha kolay; vakit ayiriniz.

5 Beğeni

7.satırdaki stringi ‘Fromm’ olarak düzeltip tekrar dener misiniz?