random.seed(seed)
是 Python 标准random
模块中的一个函数调用,它用于确保随机数生成器产生可重复的结果。这在科学计算和机器学习中非常重要,因为它允许研究者和开发者重现实验结果。
seed
通常是一个整数,用作随机数生成器的种子值。当你在脚本或程序中使用random.seed()
并传入一个特定的种子值时,随机数生成器将从一个已知的状态开始,因此每次运行代码时生成的随机数序列都将是相同的。- 第二轮实验与第一轮实验,生成的随机数序列相同
############# 1.不使用随机种子
import random
# 不设置随机种子
random_number1 = random.randint(1, 100)
print(f"Random Number 1: {random_number1}")
random_number2 = random.randint(1, 100)
print(f"Random Number 2: {random_number2}")
# 当你运行这段代码时,每次生成的 random_number1 和 random_number2 值都可能不同,因为随机数生成器的初始状态是由当前时间或其他系统因素决定的。
############# 2.使用随机种子
import random
# 设置随机种子
random.seed(42)
# 生成随机数
random_number1 = random.randint(1, 100)
print(f"Random Number 1: {random_number1}")
random_number2 = random.randint(1, 100)
print(f"Random Number 2: {random_number2}")
# 当你运行这段代码时,无论你运行多少次,只要种子值保持为 42,random_number1 和 random_number2 的值都将是相同的。这是因为设置种子值 42 将随机数生成器的初始状态重置为一个已知的状态。
- 这个特性在需要确保实验或模拟结果可重复的科学研究和数据分析中非常有用。通过使用固定的种子值,研究人员可以确保每次实验或模拟的随机组成部分都是相同的,从而使得结果更易于比较和验证。