Python 的標準庫提供了多種處理隨機數字的工具。在許多應用程序中,我們可能需要產生一個一致或固定的隨機數字序列,特別是用於測試或重現實驗。本文重點介紹如何使用 Python 的 random
模組創建固定隨機序列,並闡明在未明確指定的情況下隨機種子是如何生成的。
random
模組random
函數Python 的 random
函數返回一個介於 0 到 1 之間的隨機浮點數。這個範圍包括 0 但不包括 1。
import random
print(random.random()) # 示範輸出: 0.7391765812285283
要產生相同的隨機數字序列,Python 允許您設置種子值。當種子未明確設置時,系統時間或進程 ID 可能用作種子值。
import random
random.seed(42)
print(random.random()) # 輸出: 0.6394267984578837
如果未設置種子,則基於像時間這樣的系統參數初始化隨機性,這意味著序列將在不同的運行中改變:
print(random.random()) # 每次輸出將有所不同
以下是您可以使用種子生成固定隨機數字序列的方式:
random.seed(10)
for i in range(5):
print(random.randint(1, 10)) # 輸出: 10, 9, 1, 8, 10
Python 的 random
模組還提供了像 shuffle
和 choice
這樣的功能。
shuffle
:此功能將給定的序列打亂。arr = [1, 2, 3, 4, 5]
random.shuffle(arr)
print(arr) # 輸出: [2, 1, 4, 5, 3]
choice
:此功能從非空序列中返回隨機元素。print(random.choice(['蘋果', '香蕉', '櫻桃'])) # 輸出: 櫻桃
總之,Python 的 random
模組提供了一種簡單的方法來生成固定的隨機序列,對於一致的測試和實驗至關重要。理解種子的原則並利用像 shuffle
和 choice
這樣的功能,為開發人員在各種應用程序中處理隨機化提供了強大的工具包。
random.shuffle
方法與固定種子,您可以以一致的模式洗牌清單。random.choice
與固定種子,您可以一致地從列表中選擇隨機元素。random
模組不適合用於加密目的,因為它並不提供真正的隨機性。它是為建模、模擬和其他非安全相關任務而設計的。[Python] 通過各種實例深入理解位元運算符 |
---|
[Python] 通過各種實例深入理解關係運算符 |
[Python] 解決 'zsh: command not found: python' 錯誤的方法 |
[Python] 通過各種實例深入理解賦值運算符 |
[Python] 通過各種實例深入理解算術運算符 |
CloneCoding
創新從一行代碼開始!