Python input hiba?
Pythonban írtam egy jelszó rendszert és nem feltétlen akar működni. Az a probléma ha a jelszót elrontom 2x nem fogja elfogadni a helyes választ, de miután ujrainditom a programot és jol irom be a jelszot, nem rontom el 1x sem, akkor megy a rendszer.
Jelszo = 'Repa'
Kerdes = input("Mi a jelszo?")
While kerdes != Jelszo:
Print("Hibas jelszo!")
Input("Mi a jelszo?")
If Kerdes == Jelszo:
Print("Sikeres belepes!")
1. A ciklusmagban a felhasználótól kapott jelszót nem adod át a kerdes változónak.
2. Az if feltétel teljesülésekor nem szakítod meg az elől tesztelő ciklust.
Tehát helyesen:
ehhez kapcsolódóan pár tipp:
* használj kódmegosztó oldalt (mint például a pastebin.com ), az megőrzi az indentálásokat
* a változókat, függvényeket kezdd mindig kis betűvel (nagy betűvel az osztályokat kezdjük Pythonban) - lásd: [link]
lehet rövidíteni még:
jelszo = 'repa'
while input("Mi a jelszo?") != jelszo:
____print("Hibas jelszo!")
print("Sikeres belepes!")
"a fentiek nem adnak arra megoldast, hogy a script ket sikertelen probalkozas utan megtagadja a belepest"
Félreértetted, ez nem is volt feltétel.
"Az a probléma ha a jelszót elrontom 2x nem fogja elfogadni a helyes választ"
Ez azt jelenti, hogyha kétszer elrontja a jelszót (egyszer a ciklus előtt, másodszor a cikluson kívül), akkor - harmadszorra - már nem fogadja el a helyes választ, ami érthető, hisz a topiknyitó kérdésben:
* a ciklusmagon belül a felhasználói bevitel nem adódik át a kerdes változónak
* helyes válasz esetén a ciklusmagon belüli feltétel nem szakítja meg a ciklusmag futását (break)
ez nem jelenti azt, hogy a kérdező ellenőrizni akarja a próbálkozások számát is.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!