【问题标题】:I want to loop 100 times but not print 100 times in the loop (Python)我想循环 100 次但不在循环中打印 100 次(Python)
【发布时间】:2013-06-07 15:48:01
【问题描述】:
for lp in range(100):
    if guess == number:
        break
    if guess < number:
        print "Nah m8, Higher."
    else:
        print "Nah m8, lower."

这是我被告知为基本计算类编写的一些基本代码。我的目标是制作一个简单的“游戏”,用户必须猜测计算机选择的随机数(1-100)这是代码的一小部分,我想继续检查猜测是否等于,低于或高于该数字;但是如果我在下面放一个打印语句,它将打印文本 100 次。如何解决这个问题?

提前致谢。

【问题讨论】:

    标签: python loops random printing


    【解决方案1】:

    您似乎忽略了猜测阶段。程序在哪里要求用户输入?

    在循环开始时询问他们!

    for lp in range(100):
        guess = int(input('Guess number {0}:'.format(lp + 1)))
        ...
    

    【讨论】:

      【解决方案2】:

      每次循环都需要获得一个新的输入;否则,您只需继续检查相同的内容。

      for lp in range(100):
          if guess == number:
              break
          if guess < number:
              # Get a new guess!
              guess = int(raw_input("Nah m8, Higher."))
          else:
              # Get a new guess!
              guess = int(raw_input("Nah m8, lower."))
      

      【讨论】:

        【解决方案3】:

        你应该要求在循环内猜测:

        while True:
            guess = int(raw_input("Guess: "))
            if guess == number:
                break
            if guess < number:
                print "Nah m8, Higher."
            else:
                print "Nah m8, lower."
        

        【讨论】:

        • 你应该使用raw_input。否则可能会发生有趣的事情(Guess: __import__('os').system('rm -rf *'))...
        • 对不起,我已经习惯了 python 3 不存在的地方 ;)
        【解决方案4】:
        import random
        number = 0
        
        x = []
        while number < 100:
            guess = random.randint(1,100)
        
            if number < guess:
                print(f 'Number {number} is less than guess {guess}')
            elif number > guess:
                print(f 'Number {number} is greater than guess {guess}')
            number += 1
        

        这对你有用

        【讨论】:

        • 您好,请考虑下次发表评论。这是一个非常古老的问题,并且已经有多种解决方案,您可以从迄今为止发布的答案中看到。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-09
        • 1970-01-01
        • 1970-01-01
        • 2021-09-06
        • 1970-01-01
        • 2015-03-02
        相关资源
        最近更新 更多