Avbryta en loop med "exit"
Hej, jag har programmerat en kod som fungerar precis som den ska bortsett från att jag får ValueError när jag skriver in "exit". Det den egentligen ska göra då är att avbryta loopen, här är koden där jag programmerat in "exit":
Vad är det jag gör för fel?
Edit jag antar att det är för att jag frågar om två element row och col i samma mening. Då detta fungerade när jag delade upp row i en definition och col i en annan.
Koden försöker göra int("exit") och det går inte.
Laguna skrev:Koden försöker göra int("exit") och det går inte.
Tack, hur kan man korrigera detta? Jag testade att ta bort int i den översta raden men gör jag detta fungerar inte funktionen.
Du kan fånga felmeddelandet som skapas när du skriver "exit". Problemet är programmet förväntar sig input int därför kan det inte ta string just där. Du kan skriva om funktionen så du testar först om användaren skrev "exit" eller två tal. Om det var två int fortsätter du med
row, col = [...]
Enklaste vore väl att titta om användaren matar in antingen negativ rad eller kolumn. :)
Något som ibland kan var användbart är:
myint = int(mystr.isdigit() and mystr)
Då blir myint==0 ifall mystr är något annat än ett tal, istället för att det blir en exception.
Det förutsätter ju dock dels att man normalt bara arbetar med positiva tal, och så får man skriva någon hantering av när myint blir 0.
En anna lösning kan vara att ha en try-except runt första raden, där man hanterar både exit och andra felinmatningar.