【问题标题】:Display 6 Random Integers显示 6 个随机整数
【发布时间】:2014-04-05 06:41:15
【问题描述】:

我正在尝试使用以下 Python 代码显示 6 个随机整数:

#!"E:/PortablePython3.2.5.1/App/python.exe" 

import random

print("Content-Type: text/html\n\n")

for k in range(6):
    r = random.randint(1, 75)

print("Winning Lotto Numbers: ", r)

我可以得到一个随机整数来显示,但我无法显示剩余的 5。

【问题讨论】:

  • r 只是名称 one 整数.. 它被重新分配了 6 次之前它曾经显示一次。
  • 您在for-loop 中重复使用r。您可能想在for-loop 中写print("Win...)

标签: python random integer


【解决方案1】:

问题在于,在每次迭代中,您都没有打印任何内容。您只是将值分配给r。如果您想在每次迭代中打印一个随机整数,那么print() 调用应该for 循环中:

for k in range(6):
    r = random.randint(1, 75)
    print("Winning Lotto Numbers: ", r)

注意事项:

  • 您可以通过直接打印数字来减少代码(无需将其分配给变量):

    for k in range(6):
         print("Winning Lotto Numbers: ", random.randint(1, 75))
    

编辑:

要显示“中奖乐透号码:”一次,您可以:

print("Winning Lotto Numbers: ")

for k in range(6):
    print(random.randint(1, 75), end = ' ')

【讨论】:

  • 这有效,但也显示“中奖乐透号码:”6 次。想法?
【解决方案2】:

我猜你需要生成一个包含 6 个随机数的列表并显示它们。像这样使用list comprehension

nums = [random.randint(1, 75) for i in range(6)]
print "Winning Lotto numbers: %s" % ",".join([str(i) for i in nums])

【讨论】:

  • 对于这种情况,我建议使用列表理解。但请注意,在可维护性方面,将其全部写出来(在 for 循环之类的)中要冗长得多
猜你喜欢
  • 1970-01-01
  • 2018-11-06
  • 2013-10-10
  • 2011-02-27
  • 1970-01-01
  • 1970-01-01
  • 2019-01-31
  • 2012-06-15
  • 2021-09-14
相关资源
最近更新 更多