La fonction intégrée Python memoryview()

Tiré de la documentation Python 3

Retourne un objet « memory view » créé à partir de l'argument donné. Voir Memory Views pour plus d'informations.

Introduction

La fonction memoryview() crée un objet memory view à partir d’un argument donné. Une memory view vous permet d’accéder à la mémoire d’un autre objet, comme un objet <router-link to="/builtin/bytes">bytes</router-link> ou <router-link to="/builtin/bytearray">bytearray</router-link>, sans faire de copie. Ceci est très efficace pour les grandes quantités de données, car cela évite la duplication de mémoire.

Exemples

Voici comment vous pouvez utiliser memoryview() :

# Créer un bytearray
data = bytearray(b'hello world')

# Créer une memory view des données
view = memoryview(data)

# Accéder aux données via la vue
print(view[0])  # ASCII pour 'h'
print(view[6:11])  # une tranche de la mémoire
print(view[6:11].tobytes())

# Vous pouvez également modifier les données sous-jacentes via la vue
view[0] = 72  # ASCII pour 'H'
print(data)
104
<memory at 0x...>
b'world'
bytearray(b'Hello world')

Liens pertinents