【python】random.seed()用法详解

描述

初始化随机数生成器。

语法

random.seed(a=None, version=2)

参数

a – 生成随机数的种子,可以设置为一个整数(int)。

返回

没有返回值。

示例

设置随机种子

# test.py
import random
random.seed(0)
print(random.random()) # 返回从区间[0.0, 1.0)随机抽取的浮点数

每次运行test.py的输出结果都是一样:

0.8444218515250481

没有随机种子

# test.py
import random

print(random.random()) # 返回从区间[0.0, 1.0)随机抽取的浮点数

每次运行test.py的输出结果都不相同:

0.7368183372926044
------------------
0.9405161675574418
------------------
0.5895382014645497

注意

设置随机种子后,是每次运行test.py文件的输出结果都一样,而不是每次随机函数生成的结果一样:

# test.py
import random
random.seed(0)
print(random.random())
print(random.random())

输出:

0.8444218515250481
0.7579544029403025

可以看到两次打印random.random()函数生成的结果是不一样的,但如果你再运行test.py,还是会打印:

0.8444218515250481
0.7579544029403025

但是,如果你就是想要每次运行随机函数生成的结果都一样,那你可以在每个随机函数前都设置一模一样的随机种子:

# test.py
import random
random.seed(0)
print(random.random())
random.seed(0)
print(random.random())

输出:

0.8444218515250481
0.8444218515250481

引用

https://docs.python.org/3/library/random.html#random.seed

相关

【pytorch】torch.manual_seed()用法详解

posted @ 2021-01-04 16:41  XavierJ  阅读(1738)  评论(0编辑  收藏  举报