温馨提示×

NumPy共享内存的数组怎么表示

小亿
82
2024-05-13 11:32:15
栏目: 编程语言

NumPy共享内存的数组可以通过使用numpy.memmap函数来表示。numpy.memmap函数创建一个可以直接映射到磁盘上的文件的内存映射数组,允许多个Python进程共享相同的数据。

以下是一个示例:

import numpy as np

# 创建一个数组并将其保存到磁盘上的文件
arr = np.memmap('data.dat', dtype='float64', mode='w+', shape=(1000, 1000))

# 写入数据
arr[:] = np.random.rand(1000, 1000)

# 读取数据
print(arr[0, 0])

# 可以在另一个Python进程中打开该文件并共享数据
# 在另一个进程中打开数组
arr_shared = np.memmap('data.dat', dtype='float64', mode='r', shape=(1000, 1000))

# 读取共享的数据
print(arr_shared[0, 0])

在上面的示例中,我们创建了一个大小为1000x1000的数组,并将其保存到名为data.dat的文件中。然后我们可以使用np.memmap函数在不同的Python进程中打开该文件,并共享数据。

0