【发布时间】:2019-08-06 16:54:30
【问题描述】:
在我自己的函数中使用 numpy.random.shuffle 时,它意外更改了我的全局变量。不知道是不是对它的使用有什么误解。
numpy 版本是'1.16.4'
import numpy as np
def shuffle_test(a):
np.random.shuffle(a)
b=a
return b
outer_input = np.array(range(10))
print(outer_input)
outer_output = shuffle(outer_input)
print(outer_input)
这是结果 洗牌前的输入:
[0 1 2 3 4 5 6 7 8 9]
洗牌后输入:
[5 4 7 1 8 2 6 0 9 3]
【问题讨论】:
-
如果你在像
numpy这样广泛使用的包中发现了一些意想不到的东西,这几乎总是你理解而不是包实现中的“错误” -
不客气,很高兴能帮到你,如果你觉得我的回答对你有帮助,你可以考虑what to do when someone answers my question和how to accept my answer