さて、今回は独自の動的配列クラスを作成します! Ctypesと呼ばれる組み込みのライブラリを使用します。 詳細はドキュメントをチェックしてください。しかし、基本的にここでは Ctypes モジュールの生の配列として使用されます。 もし、あなたがそれにとても興味を持ったなら、チェックしてみてください。 Ctypes Tutorial.
We will go step by step walk through of the code
# ctypes
is a foreign function library for Python. C互換のデータ型を提供し、DLLやシェアードライブラリ内の関数を呼び出すことができます。
import ctypes
we will create our own class creating a new class creates a new type of object, allowing new instances of that type to be made. 各クラスのインスタンスは、その状態を維持するために属性を持つことができます。
class DynamicArray( ):
クラスのメソッドの作成 :
def __init__(self):
__init__() はクラスのコンストラクタとして知られている予約メソッドで、インスタンスを作成するときに実行されます。
def __len__(self):
def __getitem__(self, k):
__getitem__
はself
などの呼び出しに使われます。
def _resize():
アンダースコアというプリフィックスは、単一のアンダースコアから始まるメソッドが内部使用目的であるというヒントとして意図されています。
def make_array(self, new_cap):
このメソッドは新しい配列を作成するために使用される。
さて、このクラスのインスタンスを作成し、以下のコードで遊んでみましょう。