python | random.seed()

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40006058/article/details/83349625

random

1、不设置seed,每次的输出都不同,随机的

>>>import random
>>> random.randint(1,10)
10
>>> random.randint(1,10)
9
>>> random.randint(1,10)
3
>>> random.randint(1,10)
3
>>> random.randint(1,10)
6

2、设置seed后,每次的输出都相同

>>> import random
>>> random.seed(0)
>>> random.randint(1,10)
7
>>> random.seed(0)
>>> random.randint(1,10)
7
>>> random.seed(0)
>>> random.randint(1,10)
7

numpy.random()

1、不设置seed,每次的输出都不同,随机的

>>> import numpy
>>> numpy.random.rand(4)
array([0.56804456, 0.92559664, 0.07103606, 0.0871293 ])
>>> numpy.random.rand(4)
array([0.0202184 , 0.83261985, 0.77815675, 0.87001215])
>>> numpy.random.rand(4)
array([0.97861834, 0.79915856, 0.46147936, 0.78052918])
>>> numpy.random.rand(4)
array([0.11827443, 0.63992102, 0.14335329, 0.94466892])

2、设置seed后,每次的输出都相同

>>> import numpy
>>> numpy.random.seed(10)
>>> numpy.random.rand(4)
array([0.77132064, 0.02075195, 0.63364823, 0.74880388])
>>> numpy.random.seed(10)
>>> numpy.random.rand(4)
array([0.77132064, 0.02075195, 0.63364823, 0.74880388])
>>> numpy.random.seed(10)
>>> numpy.random.rand(4)
array([0.77132064, 0.02075195, 0.63364823, 0.74880388])

常用情况

>>> for i in range(10):
...     random.seed(0)
...     print(random.randint(1,10))
...
7
7
7
7
7
7
7
7
7
7
>>> for i in range(10):
...     print(random.randint(1,10))
...
7
1
5
9
8
7
5
8
6
10

猜你喜欢

转载自blog.csdn.net/qq_40006058/article/details/83349625