您好,我在 python 中的“隨機”庫有問題。所以基本上我希望它回傳一個介于 (1, 99) 之間的值,以便該部分作業,但我希望它通過只運行一次代碼來回傳多個隨機值。每次運行它只給我 1 個隨機值。這是代碼:
import random
import time
Random = random.randint(1, 99)
while True:
time.sleep(0.7)
print(Random)
而且我還想問一下如何在python中為函式計時。如果我只希望它運行特定的時間,我該怎么做?
謝謝。
uj5u.com熱心網友回復:
import random
import time
while True:
Random = random.randint(1, 99)
print(Random)
time.sleep(0.7)
如果您希望它盡可能快地運行 0.7 秒:
import random
import time
alarm = time.time() 0.7
while time.time() < alarm:
Random = random.randint(1, 99)
print(Random)
請注意,這是一個緊密的 CPU 回圈,因此不是一個好主意,但它向您展示了這個概念。
uj5u.com熱心網友回復:
如果您想在一次呼叫中獲得隨機整數串列,您可以使用choices或sample從random標準庫range中獲取您想要的內容:
import random
# 10 random integers between 1-99 with replacement
print(random.choices(range(1, 100), k=10))
# 10 random integers between 1-99 without replacement
print(random.sample(range(1, 100), k=10))
[45, 52, 36, 43, 46, 28, 43, 37, 37, 17]
[63, 10, 40, 38, 86, 87, 65, 37, 15, 49]
uj5u.com熱心網友回復:
你可以試試這個:
import random
n = 20
random_num_list = random.sample(list(range(1,99)), n)
uj5u.com熱心網友回復:
這是因為使用隨機庫的亂數只在 while 之外宣告了一次。
正如您在上面回答的那樣,您可以將亂數生成放入 while 回圈中。
您也可以使用 for 回圈對其進行檢查。
from random import randint
for _ in range(10):
random_num= randint(0, 10)
print(random_num)
輸出
1
3
4
9
4
2
7
5
1
6
uj5u.com熱心網友回復:
試試這個:
import random
for i in range(3):
print(random.randint(1,99)
uj5u.com熱心網友回復:
# Imports
import random
import time
# Working
while True:
time.sleep(0.7)
Random = random.randint(1, 99)
print(Random)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/464575.html
標籤:Python python-3.x 功能 随机的 用户定义函数
