📜  Python中的 random.seed()

📅  最后修改于: 2022-05-13 01:55:37.119000             🧑  作者: Mango

Python中的 random.seed()

random()函数用于在Python中生成随机数。实际上不是随机的,而是用于生成伪随机数。这意味着可以确定这些随机生成的数字。

random()函数为某些值生成数字。该值也称为种子值。

种子函数如何工作?
种子函数用于保存随机函数的状态,以便在同一台机器或不同机器(针对特定种子值)上多次执行代码时生成相同的随机数。种子值是生成器生成的先前值编号。第一次没有先前值时,它使用当前系统时间。

使用random.seed()函数

在这里,我们将看到如何每次使用相同的种子值生成相同的随机数。

示例 1:

# random module is imported
import random 
for i in range(5):
  
    # Any number can be used in place of '0'.
    random.seed(0)
  
    # Generated random number will be between 1 to 1000.
    print(random.randint(1, 1000))  
     
输出:
865
865
865
865
865


示例 2:

# importing random module
import random
  
random.seed(3)
  
# print a random number between 1 and 1000.
print(random.randint(1, 1000))
  
# if you want to get the same random number again then,
random.seed(3) 
print(random.randint(1, 1000))
  
# If seed function is not used
  
# Gives totally unpredictable responses.
print(random.randint(1, 1000))
输出:
244
244
607

执行上述代码时,上述两个打印语句将生成响应244 ,但第三个打印语句给出不可预测的响应。

random.seed() 的使用

  1. 这用于生成伪随机加密密钥。加密密钥是计算机安全的重要组成部分。这些是用于保护数据免受互联网上未经授权的访问的那种密钥。
  2. 在使用随机数进行测试的情况下,它可以轻松优化代码。代码的输出有时取决于输入。因此,使用随机数来测试算法可能很复杂。此外,种子函数用于一次又一次地生成相同的随机数,简化了算法测试过程。