上級Python開発コース
チャプター
>
レベル
上級クラス
オブジェクト継承
この章では、クラスを最大限に活用する方法を探求し、Pythonのオブジェクトの能力を拡張できるさまざまなテクニックやクラス固有の関数について学びます。
このレベルでは、クラスの最も顕著な拡張機能の一つであるオブジェクト継承について学びます。この機能により、他のクラスから機能を継承するクラスを作成でき、基本的なプロパティセットを維持しながら、より動的なオブジェクトを作成することが可能になります。

目的
クラスのオブジェクト継承を利用して、ワインボトルに充填し、保管せよ。
この部屋はワインボトルを充填するために使用されます。まだ瓶詰めと梱包が必要なものがいくつかありますが、クラスを利用することでこれを最適に行うことができます。クラスを使用すると、さまざまな特性を持つオブジェクトを作成でき、ここでは異なる種類のワインボトルが対象となります。クラスで作成されたオブジェクトは、他のクラスから特性を継承することができ、これらは 子 クラスと呼ばれ、より多くのクラスを作成するためのベースとして使用されるクラスは 親 クラスと呼ばれます。
# Parent Class
class wine_bottle:
color = ""
def set_bottle(self):
player.place("empty bottle")
# Child Class
class fill_bottle(wine_bottle):
def fill_bottle(self):
player.combine(["empty bottle", self.color + " wine"])
player.speak("The bottle's color is: %s" % self.color)
player.collect(self.color + "bottle")
使用するために2つ(2)のクラスが用意されています。親 クラスは樽の前にボトルを配置して充填するために使用され、子 クラスはワインボトルを組み合わせて設定するために使用されます。子 クラスは親 クラスのプロパティを継承するため、大きな手間をかけずにボトルのバリエーションを作成できます。
まず、マップ上部にある4つ(4)の空のボトルを歩いて集めてください。集めたら、カラフルなカーペットの上部にある暗いX印の場所へ向かい、樽ディスペンサーの前に立ちます。そこには4種類(4)のカラフルなカーペットがあり、そのエリアで作成するワインの色を表しています。対象の色は: "green" 、 "blue" 、 "purple" 、 "yellow" です。
暗いX印の場所で、子 クラスを使用してオブジェクトを作成します。例えば: green_bottle = fill_bottle() のようにします。作成するボトルに合わせてオブジェクトの名前を付け、作成後にそのオブジェクトの色を設定して機能を実行します。
# Green bottle setup green_bottle.color = "green" green_bottle.set_bottle() green_bottle.fill_bottle()
これを、それぞれのX印にある4つのワインボトルすべてに対して行ってください。すべてのボトルが準備され、収集されたら、明るいX印の場所に向かい、open() 関数(例: player.open())を使用してワインセラーの扉を開けます。次に、金色のX印の場所に向かい、作成したボトルをワインラックに保管してください。
すべてのボトルを bottles という名前のリストに入れ、ワインラックに向かいながら place() 関数を使用してリストを配置し、レベルをクリアします。集めるボトルは4つあり、それぞれ "green bottle" 、 "blue bottle" 、 "purple bottle" 、 "yellow bottle" です。