Nous allons maintenant créer notre propre classe de tableau dynamique ! Nous allons utiliser une bibliothèque intégrée appelée Ctypes. Consultez la documentation pour plus d’informations, mais son essentiellement va être utilisé ici comme un tableau brut du module Ctypes. Si vous vous trouvez très intéressé par ce module, consultez : Ctypes Tutorial.
Nous allons parcourir pas à pas le code
# ctypes
est une bibliothèque de fonctions étrangères pour Python. Elle fournit des types de données compatibles C et permet d’appeler des fonctions dans des DLL ou des bibliothèques partagées. Elle peut être utilisée pour envelopper ces bibliothèques dans du Python pur.
import ctypes
nous allons créer notre propre classe créer une nouvelle classe crée un nouveau type d’objet, permettant de créer de nouvelles instances de ce type. Chaque instance de classe peut avoir des attributs qui lui sont attachés pour maintenir son état. Pour plus d’infos sur les classes, allez cliquer ici.
classe DynamicArray( ):
Création de méthodes de la classe :
def __init__(self):
__init__() est une méthode réservée également connue comme le constructeur de la classe. elle est exécutée lorsqu’une instance est créée.
self est similaire à ce mot clé en java il se réfère à l’instance qui est créée.
def __len__(self):
def __getitem__(self, k):
__getitem__
est utilisé pour mettre en œuvre des appels comme self
.
def _resize():
Le préfixe de soulignement est destiné à indiquer qu’une méthode commençant par un seul soulignement est destinée à un usage interne. Cette convention est définie dans le PEP 8.
def make_array(self, new_cap):
Cette méthode est utilisée pour créer un nouveau tableau.
Maintenant, créons une instance de notre classe et jouons avec elle dans l’extrait de code ci-dessous, vous pouvez voir certaines des opérations effectuées par list.
.