Python Ses ile Çalışan Programda Else Komutu da Çalışıyor

Arkadaşlar merhaba, daha önce demiştim burada sesli bir asistan geliştiriyorum. Sisteme tam entegre olacak. Ama sorunum şu ki benden aldığı sesi yazıya döküp tek tek kelime içinde komut ararken örneğin “Bana python anlat” dediğimiz zaman bana kısmında sorun yok, python görünce komut çalışıyor fakat ardından anlat kısmına gelince bunu bilmiyorum diyor. Ben içinden komutu görünce direkt olarak durup işleme geçmesini istiyorum. Bunu nasıl bir yolla yapmayalım? For döngüsünü durdurup altındaki if else dışarı alarak yapmak sağlıklı olacak mıdır?

Komutunuzu yazabilirmisiniz

Sifirdan basliyorsan tasarlamadan once test case’lerini cikartman lazim:

“Bana anlat” dediginde ne olacak?
“Bana python python” ?
“” ?
“Bana pyton anlat” ?
“Bana beni anlat” ?

Baslamiyorsan soruyu kodunu gorebilen insanlara sorman lazim.

@nickzsche sorununu çözermi bilmiyorum ama ben bu konu ile ilgili forumda bir konu açmıştım
ilgilenirsen konu burada :Sesli asistan örneği

Tam olarak buradaki kod arkadaşlar.

Kodlar

Wormer_King sizin de konunuza hemen bakıyorum. Çok teşekkür ederim. Bu daha başlangıç kısmı zaten. Yani daha ufak ufak modülleri çıkartmaya çalışıyorum.

1 Beğeni

İstihza’dan alıntı:

…Dikkat ederseniz yukarıdaki kodlarda if deyimlerini art arda sıralamak yerine ilk if’ten sonra elif ile devam ettik. Peki şöyle bir şey yazarsak ne olur?

soru = input("Bir meyve adı söyleyin bana:")

if soru == "elma":
    print("evet, elma bir meyvedir...")

if soru == "karpuz":
    print("evet, karpuz bir meyvedir...")

if soru == "armut":
    print("evet, armut bir meyvedir...")

else:
    print(soru, "gerçekten bir meyve midir?")

Bu kodlar beklediğiniz sonucu vermeyecektir. İsterseniz yukarıdaki kodları çalıştırıp ne demek istediğimizi daha iyi anlayabilirsiniz. Eğer yukarıda olduğu gibi if deyimlerini art arda sıralar ve son olarak da bir else bloğu tanımlarsak, ekrana ilk bakışta anlamsız gibi görünen bir çıktı verilecektir:

evet, elma bir meyvedir...
elma gerçekten bir meyve midir?

Mevzunun ilerisinde de şöyle yazıyor:

…Dolayısıyla, eğer programınızda bir else bloğuna yer verecekseniz, ondan önce gelen koşullu durumların ilkini if ile sonrakileri ise elif ile bağlayın. Yani:

if koşul_1:
    sonuç_1

elif koşul_2:
    sonuç_2

elif koşul_3:
    sonuç_3

else:
    sonuç_4
2 Beğeni