小编Jam*_*sel的帖子

即使所有测试都是假的,Numpy 数组也共享内存???这是一个错误吗?

我有一些代码,我一生都无法弄清楚这些是如何共享内存的!!!!所有测试都是错误的(如图所示),然而,内存位置在功能上和视觉上似乎都相同。我花了几个小时试图排除故障,但无法弄清楚。 请帮忙!!!为什么这些阵列共享内存!??

listOfValueslistOfxValues在不应该共享内存时共享内存。

警告:丑陋,丑陋的代码,我很抱歉,这是艰难的一天。

listOfLists = []
splitold=0

#split arrays into each bin
for split in splitInd:
    splitnew=split
    listOfLists.append(xind[splitold:splitnew])
    splitold=split

listOfValues = np.array(listOfLists.copy())
#convert to float type
for i,lst in enumerate(listOfValues):
    listOfValues[i] = lst.astype(float)

listOfxValues = np.copy(listOfValues)

#PRINT TROUBLESHOOTING
print(listOfxValues.data)
print(listOfValues.data)
print(listOfValues is listOfxValues)
print(listOfValues == listOfxValues)
print(listOfValues.data is listOfxValues.data)
print(listOfValues.data == listOfxValues.data)
print(np.shares_memory(listOfxValues,listOfValues))
print(listOfxValues.__array_interface__['data'][0] == listOfValues.__array_interface__['data'][0]) 
print(listOfxValues.__array_interface__['data'][0] == listOfValues.__array_interface__['data'][0])

#exchange indexed values for real values
for each in range(len(listOfValues)):
    for …
Run Code Online (Sandbox Code Playgroud)

python memory numpy shared-memory python-3.x

0
推荐指数
1
解决办法
55
查看次数

标签 统计

memory ×1

numpy ×1

python ×1

python-3.x ×1

shared-memory ×1