While ve for döngüsü örnekte nasıl kullanabilirim

Merhaba başlıkta belirttiğim gibi aşağıda kod örneğinde while veya for döngüsünü nasıl kullanabilirim yapmak istediğim x tusa basarak programı kapatabilmek ve giriş basarılı yazdırıldıktan sonra programı kapanması. Bir kaç eklemeyi denedim ama sonsuz olarak email hatalı yazdırıyor.

email="deneme@gmail.com"
şifre="12345"

gemail=input("Lütfen Email Girin :")
gşifre=input("Lütfen Şifre Girin :")

dgiriş="Giriş Başarılı!"
ehata="Email Yanlış!"
şhata="Şifre Yanlış!"

if (gemail==email and gşifre == şifre):
    print("-"*len(dgiriş),dgiriş,"-"*len(dgiriş),email,şifre,sep="\n")
elif (gşifre != şifre):
        print(şhata,"\n","-"*len(şhata),"\a")
elif (gemail != email):
    print(ehata,"\n","-"*len(ehata),"\a",sep="")

x tusa basarak programı kapatmak derken esc gibi mi yoksa terminale çık yazmak gibi mi

esc gibi yani herhangi bir tuşa bastığımda program kapansın

Büyük ihtimal input u while ın içine koymayı unutmuşsunuzdur.Her turda yeni gmail ve şifre bilgisi alması için döngünün içinde olması lazım inputun aksi takdirde ilk başta aldığı yanlışsa while ın içinde de başka bilgi almayacaksa sürekli hatalı şifre, hatalı email veya giriş yaptınız der

rica etsem while döngüsünü kullanarak gönderdiğim kodu yazabilirmisiniz mesela 2 input var eklerken and or kullanımı felan bu örneğe bakarak anlamaya çalışacağım

import keyboard
email="deneme@gmail.com"
şifre="12345"
gemail=""
gsifre=""
cıkıs=True
dgiriş="Giriş Başarılı!"
ehata="Email Yanlış!"
şhata="Şifre Yanlış!"

def tusabasıldı(event):
    if event.name=="esc":
        global cıkıs
        cıkıs=False
keyboard.on_press(tusabasıldı)
dgiriş="Giriş Başarılı!"
ehata="Email Yanlış!"
şhata="Şifre Yanlış!"
while (gemail!=email or gşifre != şifre) and cıkıs:
    gemail = input("Lütfen Email Girin :")
    gşifre = input("Lütfen Şifre Girin :")
    if (gemail==email and gşifre == şifre):
        print("-"*len(dgiriş),dgiriş,"-"*len(dgiriş),email,şifre,sep="\n")
    elif (gemail != email):
        print(ehata,"\n","-"*len(ehata),"\a",sep="")
    elif (gşifre != şifre):
            print(şhata,"\n","-"*len(şhata),"\a")
print("Çıkılıyor")

Kusura bakmayın geç oldu.Böyle bir şey yaptım ama esc ye basınca döngü bittikten sonra kapanıyor .Döngünün ortasındayken kırdırmayı yapmadım.

1 Beğeni

Çok teşekkür ederim ilgin için konularda biraz daha ilerlemem gerekli henüz def komutuna gelmedim eğitimdeki örnek komutlarla ilerlemeliyim galiba.