【问题标题】:python guess the number - try again after overguessingpython猜数字 - 猜测过度后重试
【发布时间】:2015-08-11 16:40:42
【问题描述】:

我做了一个简单的猜数字程序,但是猜错了3次后我不知道如何再次尝试。有什么提示和技巧吗?

from random import randint
for i in range(1): 
random_value = randint (1,10)

print "Guess the number"
tryes = 1
while tryes <= 3:
guess_1 = input('>')

    if guess_1 > random_value:
        print "The number is lower"
        tryes = tryes + 1
    elif guess_1 < random_value:
        print "The number is higher"
        tryes = tryes + 1
    elif guess_1 == random_value:
        print "You guessed right"
        tryes = tryes + 3
    else:
        print "Invalid answer"

print "You won! Lets try that again shall we?"

【问题讨论】:

  • 只需在末尾添加os.system("python %s"%sys.argv[0])

标签: python random numbers


【解决方案1】:
from random import randint
while True: #this will just make it loop forever ...
    #for i in range(1):  ## No idea what this was meant to do ...
    random_value = randint (1,10)

    print "Guess the number"
    tryes = 1
    while tryes <= 3:
        guess_1 = input('>')

        if guess_1 > random_value:
            print "The number is lower"
            tryes = tryes + 1
        elif guess_1 < random_value:
            print "The number is higher"
            tryes = tryes + 1
        elif guess_1 == random_value:
            print "You guessed right"
            tryes = tryes + 3
        else:
            print "Invalid answer"

    print "You won! Lets try that again shall we?"

【讨论】:

  • 那你为什么不投呢?
  • python2 input("Enter Int:") 与 python3 eval(input("Enter Int:")) 相同 ...通常更建议使用 raw_input 和 cast,但这与 OP 的问题无关
  • 哎呀,我确实有一个小的缩进错误......并且OP的代码存在一些逻辑问题
  • 现在又重新开始了,但是我猜对了之后如何让它继续呢?现在,即使我猜对了,它也只是重新开始。
  • 你应该把它作为一个函数'def'。然后你可以用更多的功能扩展你的程序。您还可以使用不同的类,例如主要,失败,错误,下一个。
猜你喜欢
  • 2021-04-03
  • 1970-01-01
  • 2023-04-04
  • 2016-02-22
  • 1970-01-01
  • 2017-02-23
  • 2016-02-01
  • 2011-11-08
  • 1970-01-01
相关资源
最近更新 更多