在python中对小游戏应用QUIT函数

在python中对小游戏应用QUIT函数,python,python-3.x,exit,valueerror,Python,Python 3.x,Exit,Valueerror,所以我刚开始使用python,我收到了以下任务: 我需要创建一个迷你游戏,游戏选择0-10之间的随机数。 现在我得到了大部分代码,但似乎在实现Quit选项方面一直存在问题 因此,关键是玩家可以在任何时候给出Quit作为答案,然后游戏退出。 看来我不能以正确的方式退出 键入Quit命令(nee)时,我不断收到以下错误消息 **Traceback (most recent call last): File "C:\Users\aarabsa\PycharmProjects\projec

所以我刚开始使用python,我收到了以下任务:

我需要创建一个迷你游戏,游戏选择0-10之间的随机数。 现在我得到了大部分代码,但似乎在实现
Quit
选项方面一直存在问题

因此,关键是玩家可以在任何时候给出
Quit
作为答案,然后游戏退出。 看来我不能以正确的方式退出

键入Quit命令(
nee
)时,我不断收到以下错误消息

**Traceback (most recent call last):
  File "C:\Users\aarabsa\PycharmProjects\projecten1\Lotto1.2.py", line 22, in <module>
    guess = int(input('Probeer opnieuw of typ nee om het spel te verlaten: '))
ValueError: invalid literal for int() with base 10: 'nee'**
**回溯(最近一次呼叫最后一次):
文件“C:\Users\aarabsa\PycharmProjects\projecten1\Lotto1.2.py”,第22行,在
guess=int(输入('Probeer opnieuw of typ nee om het spel te verlaten:'))
ValueError:基数为10的int()的文本无效:“nee”**
你们谁能给点建议吗

import random        
import sys

print("Hello, wat is uw naam?")

naam = input()

print("Kan je de juiste cijfer raden tussen 0 en 10?")

answer = random.randint(0, 10)

guess = int(input('geef uw gekozen nummer: '))


TotalGuesses = 0

while guess != answer:

   TotalGuesses += 1

   if guess < answer:
    
     print('fout antwoord!')
    
     guess = int(input('Probeer opnieuw of typ nee om het spel te verlaten: '))
    
     if guess in ['nee']:
        
        print('Jammer dat je nu al opgeeft ' + naam + ', tot de volgende keer!')
        
        sys.exit()

   elif guess > answer:
    
        print('fout antwoord!')
    
        guess = int(input('Probeer opnieuw of typ nee om het spel te verlaten: '))
    
        if guess in ['nee']:
        
           print('Jammer dat je nu al opgeeft ' + naam + ', tot de volgende keer!')
    
        sys.exit()

     if guess == answer:
    
         break

if guess == answer:

print('Correct ' + naam + '! Je hebt ' + str(TotalGuesses) + 'foutief geraden voordat je de juiste antwoord kon vinden!')
随机导入
导入系统
打印(“您好,请问您是uw naam吗?”)
naam=输入()
打印件(“您是否愿意阅读第10版?”
答案=random.randint(0,10)
guess=int(输入('geef-uw-gekozen-numer:'))
总猜测数=0
猜猜看!=答复:
总猜测数+=1
如果猜测<答案:
打印('fout antwoord!')
guess=int(输入('Probeer opnieuw of typ nee om het spel te verlaten:'))
如果在['nee']中猜测:
打印('Jammer dat je nu al opgeeft'+naam+',tot de volgende keer!')
sys.exit()
elif guess>答案:
打印('fout antwoord!')
guess=int(输入('Probeer opnieuw of typ nee om het spel te verlaten:'))
如果在['nee']中猜测:
打印('Jammer dat je nu al opgeeft'+naam+',tot de volgende keer!')
sys.exit()
如果猜测==答案:
打破
如果猜测==答案:
打印('Correct'+naam+'!Je hebt'+str(总猜测)+'foutief geraden voordat Je de juiste antwoord kon vinden!')

只有在您首先确保用户没有输入该字符串时,才应将其转换为int。例如:

guess = None  # So it's defined
guess_string = input('geef uw gekozen nummer: ')
if guess_string.lower() == 'nee':
    ...  # tell the user goodbye, or whatever
    sys.exit()
else:
    guess = int(guess_string)
此外,在转换输入并将其分配给
guess
之前,您可以检查他们的输入是否有效。这是对你如何做到这一点的解释


由于您在程序中多次获得用户输入,因此您可以将所有这些内容封装在一个函数中,然后调用该函数,这样代码中就不会出现重复。

只有在您首先确保用户没有输入该字符串时,才应将其转换为int。例如:

guess = None  # So it's defined
guess_string = input('geef uw gekozen nummer: ')
if guess_string.lower() == 'nee':
    ...  # tell the user goodbye, or whatever
    sys.exit()
else:
    guess = int(guess_string)
此外,在转换输入并将其分配给
guess
之前,您可以检查他们的输入是否有效。这是对你如何做到这一点的解释


由于您在程序中多次获得用户输入,因此您可以将所有这些内容封装在一个函数中,然后调用该函数,这样您的代码中就不会出现重复。

您试图将文本
“nee”
转换为整数-这显然不起作用。在转换它之前,您需要检查这是否是输入。您试图将文本
“nee”
转换为整数-这显然不起作用。在转换之前,您需要检查输入是否正确