当使用" numpy"时,多个核心会打印相同的随机值。模

时间:2018-01-08 03:33:20

标签: python numpy random

以下是使用多个核心打印随机值的代码:

import multiprocessing
import numpy as np
import random

def print_map(_):
    print(np.random.rand(1))
    # print (random.uniform(0, 1))
num_data = 8
cores = 8
pool = multiprocessing.Pool(processes=cores)
print_random = pool.map(print_map, np.arange(num_data))

random.uniform可以产生不同的随机值。但是numpy.random.rand产生的一些值总是相同的。

例如,numpy模块产生:

[ 0.13633318]
[ 0.13633318]
[ 0.13633318]
[ 0.21356165]
[ 0.13633318]
[ 0.13633318]
[ 0.13633318]
[ 0.13633318]

随机模块产生:

0.608248187123
0.624808314139
0.578712513812
0.184301478758
0.297702915307
0.886168638762
0.236475271032
0.302152315241

有人有这个问题吗?我真的想知道为什么会这样。

0 个答案:

没有答案