関数内の別の変数にアクセスしようとしています。別のクラスの変数にもアクセスしようとしています。別のクラスのクラスの関数の内部で使用する変数の使用方法 - Python
class Helloworld:
def printHello(self):
self.hello = 'Hello World'
print (self.hello)
class Helloworld2(Helloworld):
def printHello2(self)
print(self.hello)
b = Helloworld2()
b.printHello2()
a = Helloworld()
a.printHello()
しかし、これは私にエラー:AttributeError: 'Helloworld2' object has no attribute 'hello'
を与えます。だから、その変数にアクセスする最も単純な方法は何でしょうか?
コードを正しくインデントしてください。理解することが重要です。 – deceze
'self.hello'は' printHello'を実行したときにのみ設定されます。そのメソッドを呼び出さないと、 'self.hello'は存在しません。 'Helloworld2'の場合、そのメソッドは呼び出されません。これを '__init__'に移動して、クラスがインスタンス化されるときにプロパティが設定されるようにすることができます。 – deceze