簡體   English   中英

使用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]

輸出[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了:

您要查找的函數是randint ,它返回指定的最小值和最大值之間的整數(整數)。

所以解決方案是

random.randint(30, 35)

Python文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM