![](/img/trans.png)
[英]How do I repeat a python PyTest multiple times, utilizing values carried over from the previous test
[英]How do i repeat the code multiple times? in python
如何让代码重新生成,以便用户只能猜出随机数的答案 3 次,如何让它停在某个点? 谢谢。 这是一个随机数猜谜游戏,我是 python 的初学者,在网上找不到任何对我有帮助的东西(或者可能是我很笨)
import random
print('what difficulty do you want? Type Easy or Hard accordingly')
difficulty = input('')
if difficulty == 'Hard':
print('your going to have a tough time')
hardrandomnum = random.randint(1,100)
def main():
print('try to guess the number')
playerguess = float (input(""))
if playerguess > hardrandomnum:
print ("guess a lower number")
if playerguess < hardrandomnum:
print("guess a higher number")
if playerguess == hardrandomnum:
print("correct")
restart = 4
if restart >4:
main()
if restart == 4:
exit()
main()
循环和中断。
例如,如果要运行代码三次,请将其包装在 for 循环中:
for i in range(3):
[here goes your code]
或者你可以做一个while循环并中断:
while(True):
[here goes your code]
if condition is met:
break
你可以使用 for 循环:
for i in range(3):
#your code
range() 中的数字表示您访问内部代码的次数还有 while 循环,但对于您的用例,for 循环应该可以解决问题
使用循环结构,如下面的答案所述。
while
循环示例def repeat_user_input(num_tries=3):
tries = 0
result = []
while tries < num_tries:
tries += 1
result.append(float(input()))
return result
print(repeat_user_input())
range
示例def repeat_user_input(num_tries=3):
return [float(input()) for _ in range(num_tries)]
我相信你正在寻找类似下面的东西?
import random
import sys
guess_counter = 0
random_number = 0
easy_hard = input('Chose your difficulty lever by typing "easy" or "hard" ')
if easy_hard.lower() == 'easy':
print('Your in luck! You are about to have fun')
random_number = random.randint(1,10)
elif easy_hard.lower() == 'hard':
print('Woow this game is not going to be easy')
random_number = random.randint(1,100)
else:
print('You need to type either easy or hard and nothing else')
sys.exit()
while guess_counter < 4:
user_number = int(input('Guess: '))
if user_number < random_number:
print('Try higher number')
guess_counter += 1
elif user_number > random_number:
print('Trye lower number')
guess_counter += 1
else:
print('Congrats! You Won')
break
else:
print('Ooops! Looks like you luck run out.')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.