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')