我正在開發一個時間表生成器,我需要隨機放兩天假。我想出了一個解決方案,但是我注意到 randinit 方法可以在一天中放兩天假,所以這個選項對我不起作用。
import random
schedule = {1: "9:00 - 17:00", 2: "9:00 - 17:00", 3: "16:00 - 00:00", 4: "16:00 - 00:00", 5: "16:00 - 00:00", 6: "16:00 - 00:00", 7: "16:00 - 00:00"}
days_off = {random.randint(1, 7): "X", random.randint(1, 7): "X"}
schedule.update(days_off)
所以我認為應該有一種更簡單的方法可以讓它在沒有硬編碼的情況下作業,但我真的找不到它。
將不勝感激任何幫助!
uj5u.com熱心網友回復:
您正在尋找的是random.sample(),它允許您從給定的總體中隨機選擇多個不同的值:
for d in random.sample(range(1, 7 1), k=2):
schedule[d] = "X"
uj5u.com熱心網友回復:
numpy的另一個答案:
import numpy as np
for day_off in np.random.choice(np.arange(7), size=2, replace=False):
shedule[day_off 1] = "X"
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/417547.html
標籤:
