-1
コードにベースポイント場合に同じままである:私はBase = ChildB
を行うと基本クラス別
class Base(object):
def __init__(self):
print "Base created"
class ChildB(Base):
def __init__(self):
super(ChildB, self).__init__()
Base = ChildB
Base()
、塩基は、グローバルフレームにおいて、前Base
を延びるChildB
を指します。 Pythonは動的に型付けされた言語なので、階層関係が変わると思います。そしてMROはスーパーリファレンスが
となりますが、結果はChildBがまだ元のBaseを拡張しているということを真実に伝えます。 なぜですか?
実際にあなたが何をしようとしているのかは不明ですか? –
この記事は役に立ちましたか?SOベテランのNed Batchelderによって書かれた[Pythonの名前と値に関する事実と神話](http://nedbatchelder.com/text/names.html)また、[その他の言語には「変数」があり、Pythonには「名前」があります。](http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html#other-languages-have-variables)素敵なダイアグラムと簡単な要約。 –
@xiºSCから[__init __()メソッドを使ってPython super()を理解するのは私の質問です。 ](http://stackoverflow.com/questions/576169/understanding-python-super-with-init-methods ) – MMMMMCCLXXVII