Python 用有限的猜测次数猜我的数字游戏
我是python新手,我正在尝试让猜测成为我的数字游戏,最多只能猜测5次,到目前为止我尝试的一切都失败了。我该怎么做呢?我忘了提到我想让程序在玩家使用他们所有的猜测时显示一条消息。下面的代码只在5次猜测之后打印“你猜到了”部分,不管他们是否猜到了Python 用有限的猜测次数猜我的数字游戏,python,Python,我是python新手,我正在尝试让猜测成为我的数字游戏,最多只能猜测5次,到目前为止我尝试的一切都失败了。我该怎么做呢?我忘了提到我想让程序在玩家使用他们所有的猜测时显示一条消息。下面的代码只在5次猜测之后打印“你猜到了”部分,不管他们是否猜到了 import random print ("welcome to the guess my number hardcore edition ") print ("In this program you only get 5 guesses\n")
import random
print ("welcome to the guess my number hardcore edition ")
print ("In this program you only get 5 guesses\n")
print ("good luck")
the_number = random.randint(1, 100)
user = int(input("What's the number?"))
count = 1
while user != the_number:
if user > the_number:
print ("Lower")
elif user < the_number:
print ("Higher")
user = int(input("What's the number?"))
count += 1
if count == 5:
break
print("You guessed it!!, the number is", the_number, "and it only"\
" took you", count , "tries")
input ("\nPress enter to exit")
随机导入
打印(“欢迎来到猜猜我的数字硬核版”)
打印(“在此程序中,您只能猜测5次\n”)
印刷品(“好运”)
_数=random.randint(1100)
user=int(输入(“数字是多少?”))
计数=1
而用户!=电话号码:
如果用户>用户编号:
打印(“下”)
elif用户<用户编号:
打印(“更高”)
user=int(输入(“数字是多少?”))
计数+=1
如果计数=5:
打破
打印(“你猜对了!!,数字是“,”数字,“而且它只是”\
“带走了你”,伯爵,“尝试了”)
输入(“\n按enter键退出”)
您有两个选择:当计数器达到一定数量时,您可以中断
循环,或者使用进行
循环。考虑到您的代码,第一个选项是最简单的:
count = 0
while user != the_number:
if user > the_number:
print ("Lower")
elif user < the_number:
print ("Higher")
user = int(input("What's the number?"))
count += 1
if count == 5: # change this number to change the number of guesses
break # exit this loop when the above condition is met
count=0
而用户!=电话号码:
如果用户>用户编号:
打印(“下”)
elif用户<用户编号:
打印(“更高”)
user=int(输入(“数字是多少?”))
计数+=1
如果计数=5:#更改此数字以更改猜测次数
中断#当满足上述条件时退出此循环
您有两个选择:当计数器达到一定数量时,您可以中断
循环,或者使用进行
循环。考虑到您的代码,第一个选项是最简单的:
count = 0
while user != the_number:
if user > the_number:
print ("Lower")
elif user < the_number:
print ("Higher")
user = int(input("What's the number?"))
count += 1
if count == 5: # change this number to change the number of guesses
break # exit this loop when the above condition is met
count=0
而用户!=电话号码:
如果用户>用户编号:
打印(“下”)
elif用户<用户编号:
打印(“更高”)
user=int(输入(“数字是多少?”))
计数+=1
如果计数=5:#更改此数字以更改猜测次数
中断#当满足上述条件时退出此循环
您有两个选择:当计数器达到一定数量时,您可以中断
循环,或者使用进行
循环。考虑到您的代码,第一个选项是最简单的:
count = 0
while user != the_number:
if user > the_number:
print ("Lower")
elif user < the_number:
print ("Higher")
user = int(input("What's the number?"))
count += 1
if count == 5: # change this number to change the number of guesses
break # exit this loop when the above condition is met
count=0
而用户!=电话号码:
如果用户>用户编号:
打印(“下”)
elif用户<用户编号:
打印(“更高”)
user=int(输入(“数字是多少?”))
计数+=1
如果计数=5:#更改此数字以更改猜测次数
中断#当满足上述条件时退出此循环
您有两个选择:当计数器达到一定数量时,您可以中断
循环,或者使用进行
循环。考虑到您的代码,第一个选项是最简单的:
count = 0
while user != the_number:
if user > the_number:
print ("Lower")
elif user < the_number:
print ("Higher")
user = int(input("What's the number?"))
count += 1
if count == 5: # change this number to change the number of guesses
break # exit this loop when the above condition is met
count=0
而用户!=电话号码:
如果用户>用户编号:
打印(“下”)
elif用户<用户编号:
打印(“更高”)
user=int(输入(“数字是多少?”))
计数+=1
如果计数=5:#更改此数字以更改猜测次数
中断#当满足上述条件时退出此循环
您的编辑说,您希望区分循环结束是因为用户猜对了,还是因为他们猜对了。这相当于检测您退出while
循环是因为其条件测试为false(他们猜到了数字),还是因为您遇到了中断(如果他们猜不到,您就会这样做)。您可以在循环中使用else:
子句来实现这一点,该子句在循环结束后,当且仅当您没有遇到中断时才会触发。在相同的条件下,仅当您将打印逻辑置于中断
之前时,才可以打印某些内容。这就给了你:
while user != the_number:
...
if count == 5:
print("You ran out of guesses")
break
else:
print("You guessed it!!, the number is", the_number, "and it only"\
" took you", count , "tries")
然而,这会使代码到处都是不同的东西。最好将“猜测正确”的逻辑与“较热/较冷”的逻辑组合在一起,而不是将它们与部分逻辑交织在一起,以确定猜测的次数。您可以通过在测试位置进行切换来实现这一点—将“是否正确”逻辑放在与较热/较冷的相同的if
中,并将猜测逻辑的数量放在循环条件中(然后更好地表示为for
循环)。所以你有:
for count in range(5):
user = int(input("What's the number?"))
if user > the_number:
print("Lower")
elif user < the_number:
print("Higher")
else:
print("You guessed it!!, the number is", the_number, "and it only"\
" took you", count , "tries")
break
else:
print("You ran out of guesses")
用于范围(5)内的计数:
user=int(输入(“数字是多少?”))
如果用户>用户编号:
打印(“下”)
elif用户<用户编号:
打印(“更高”)
其他:
打印(“你猜对了!!,数字是“,”数字,“而且它只是”\
“带走了你”,伯爵,“尝试了”)
打破
其他:
打印(“你猜不到了”)
您的编辑说,您希望区分循环结束是因为用户猜对了,还是因为他们猜对了。这相当于检测您退出while
循环是因为其条件测试为false(他们猜到了数字),还是因为您遇到了中断(如果他们猜不到,您就会这样做)。您可以在循环中使用else:
子句来实现这一点,该子句在循环结束后,当且仅当您没有遇到中断时才会触发。在相同的条件下,仅当您将打印逻辑置于中断
之前时,才可以打印某些内容。这就给了你:
while user != the_number:
...
if count == 5:
print("You ran out of guesses")
break
else:
print("You guessed it!!, the number is", the_number, "and it only"\
" took you", count , "tries")
然而,这会使代码到处都是不同的东西。最好将“猜测正确”的逻辑与“较热/较冷”的逻辑组合在一起,而不是将它们与部分逻辑交织在一起,以确定猜测的次数。您可以通过在测试位置进行切换来实现这一点—将“是否正确”逻辑放在与较热/较冷的相同的if
中,并将猜测逻辑的数量放在循环条件中(然后更好地表示为for
循环)。所以你有:
for count in range(5):
user = int(input("What's the number?"))
if user > the_number:
print("Lower")
elif user < the_number:
print("Higher")
else:
print("You guessed it!!, the number is", the_number, "and it only"\
" took you", count , "tries")
break
else:
print("You ran out of guesses")
用于范围(5)内的计数:
user=int(输入(“数字是多少?”))
如果用户>