跳至主要内容

memoryview()

Python 中的 memoryview() 函数 返回一个内存视图对象,该对象以内存高效的方式公开对象中的内部数据。它允许访问和操作 对象(如 bytes、bytearray 和 array.array)的内存内容,而无需复制数据。

参数值

参数 说明
obj

obj 参数是要公开其内部数据对象。它可以是实现缓冲区协议的对象,例如 bytes、bytearray 或公开缓冲区接口的任何对象。

flags

flags 参数是可选的。它可以是以下一个或多个 字符串 的组合:'c_contiguous'、'f_contiguous'、'fortran'、'aligned'、'writeable'、'native'。这些标志可用于控制内存视图对象如何公开和解释数据。

返回值

memoryview 对象支持 numpy.ndarraybytesbytearrayarray.array

如何在 Python 中使用 memoryview()

示例 1

Python 中的 memoryview() 函数 返回给定参数的内存视图对象。

data = bytearray(b'Hello World')
view = memoryview(data)
print(view[2:9].tobytes())
示例 2

内存视图对象允许访问对象的内部数据,而无需进行复制。

word = 'Python'
view = memoryview(word.encode())
print(list(view)[1:4])
示例 3

Memoryview 对象 可用于 bytearray 等可变对象。

nums = bytearray([1, 2, 3, 4, 5])
view = memoryview(nums)
view[2] = 9
print(nums)