使用 Random.random [30,35] 打印 30,35 之间的随机数。种子(70)

Use Random.random [30,35] to print random numbers between 30,35. Seed(70)

可能是一个简单的答案,不确定我错过了什么。对于家庭作业,我必须使用 random.random() 来生成 30 到 35 之间的数字。种子必须设置为 70 以将伪随机数与评分者匹配。这不是我的讲座,所以我有点不知道该怎么做。

我有:

import random 
def problem2_4():
    print(random.random(30,35))

但这显然是错误的。

作业说输出应该是这样的(注意:对于这个问题,我使用 def problem2_4() 只是为了作业评分系统)

problem2_4()
[34.54884618961936, 31.470395203793395, 32.297169396656095, 30.681793552717807,
 34.97530360173135, 30.773219981037737, 33.36969776732032, 32.990127772708405, 
 33.57311858494461, 32.052629620057274]

您要查找的函数是 randint,它 returns 一个介于指定的最小值和最大值之间的整数。

所以解决方案是

random.randint(30, 35)

Python Docs

输出[blah, blah, blah]表示它是一个列表的数字,而不是一个接一个打印的一系列数字。

此外,如果您需要随机浮点值,则需要将数字从 random.random(从零到一)转换到该范围内。

这意味着您可能需要这样的东西:

import random                                # Need this module.
def problem2_4():
    random.seed(70)                          # Set initial seed.
    nums = []                                # Start with empty list.
    for _ in range(10):                      # Will add ten values.
        nums += [random.random() * 5 + 30]   # Add one value in desired range.
    print(nums)                              # Print resultant list.

当然,Pythonic 方法是:

import random
random.seed(70)
print([random.random() * 5 + 30 for _ in range(10)])

这可能比您的教育工作者工作的地方稍早一些。尽管如此,尽早学习这些东西还是有好处的,因为除非你这样做,否则你永远不会成为 Pythonista :-)