Python.use(better) #課題:組み込み型 list
‖記事一覧‖ Python.use(better)《Python3.1》
課題:組み込み型 list
《著》森こねこ、小粒ちゃん+∞《監修》小泉ひよ子とタマゴ倶楽部
第0版♪2001/03/02 ● 第1版♪2003/05/25 ● 第2版♪2004/06/01 ● 第3版♪2009/02/28
組み込み型と同等の機能を実現する課題を通して「OOP」の理解を深めます。
※ Python1.5 で作成した例題を、Python3.1 で再構成しました。
- 2003-02-08 Python.use(better) #課題:組み込み型 list《source code》
- 2003-02-01 Python.use(better) #課題:組み込み型 list《test case》
episode | 《入門編》 |
---|---|
2002-04-21 ★ | Python.use(better) #組み込み型 -- list応用編で作成するツールを利用して「組み込み型 list」の理解を深めます。 |
episode | 《基礎編》 |
2002-02-04 ★★ | Python.use(better) #list: step00 -- class myList(object)メソッド __init__ は、クラス呼び出しに呼応して、生成したインスタンスを初期設定します。 |
2002-02-05 ★★ | Python.use(better) #list: step01 -- def __repr__(self)メソッド __repr__ は、組み込み関数 repr に呼応して、オブジェクトの文字列表現を与えます。括弧 [] の中に、各要素をカンマ「, 」と空白文字で区切って列挙します。 |
2002-02-06 ★★ | Python.use(better) #list: step02 -- def append(self, item)メソッド append は(組み込み関数 list に準拠して)リストの末尾に要素を追加します。 |
2002-02-07 ★★ | Python.use(better) #list: step03 -- def __init__ メソッド __init__ は、クラス呼び出しに呼応して、生成したインスタンスを初期設定します。引数 sequence を指定すると、sequence の各要素 e を、連結リスト self の末尾に追加 append します。 |
2002-02-08 ★★ | Python.use(better) #list: step04 -- def __len__(self)メソッド __len__ は、組み込み関数 len に呼応して、リストの長さ(要素数)を与えます。先頭のノード self.head から各要素を順にたどりながら、カウンターの値を1つずつ増やします。 |
2002-02-11 | Python.use(better) #list: step05 -- def __iter__ 。 |
2002-02-12 | Python.use(better) #list: step06 -- def __contains__ 。 |
2002-02-13 | Python.use(better) #list: step07 -- def count 。 |
2002-02-14 | Python.use(better) #list: step08 -- def index 。 |
2002-02-15 ★★ | Python.use(better) #list: step09 -- def __getitem__(self, key)メソッド __getitem__ は、演算子 [] に呼応して、各要素の値を参照します。引数 key と同値なら、リストの要素をリターン値にします。引数 key と同値のものが見つからないなら、例外 IndexError を生成します。 |
2002-03-18 ★★ | Python.use(better) #list: step10 -- def __setitem__(self, key, value)メソッド __setitem__ は、演算子 [] に呼応して、各要素の値を設定します。連結リストの各ノードを順にたどりながら、引数 key と同値なら、引数 key の値を設定します。引数 key と同値でないなら、次のノードを再設定するともに、カウンターの値を1つ増やします。 |
2002-03-19 | Python.use(better) #list: step11 -- def insert |
2002-03-20 | Python.use(better) #list: step12 -- def extend |
2002-03-21 ★★ | Python.use(better) #list: step13 -- def __delitem__メソッド __delitem__ は、del 文に呼応して、任意の要素を削除します。連結リストの各ノードを順にたどりながら、引数 key と同値なら、ノードを削除します。引数 key と同値のものが見つからないなら、例外 IndexError を生成します。 |
step14 -- def remove(self, value) | |
step15 -- def pop(self) | |
□□□□□□ | □ |
事例:モジュールを起動する
■ 全項目を確認する
全ステップの「項目」を確認するには、関数 do を利用します。
$ python -i myList.py >>> do() 0: step00 -- class myList(object) 1: step01 -- def __repr__(self) 2: step02 -- def append(self, item) 3: step03 -- def __init__(self, sequence=None) 4: step04 -- def __len__(self) 5: step05 -- def __iter__(self) 6: step06 -- def __contains__(self, value) 7: step07 -- def count(self, value) 8: step08 -- def index(self, value) 9: step09 -- def __getitem__(self, key) 10: step10 -- def __setitem__(self, key, value) 11: step11 -- def insert(self, index, item) 12: step12 -- def extend(self, iterable) 13: step13 -- def __delitem__(self, key) 14: step14 -- def remove(self, value) 15: step15 -- def pop(self) ... >>>
》こちらに移動中です《
↑TOP