#わからないこと
selfがクラスのインスタンスであればクラスの中にさらにクラスが入るという構造になるのではないでしょうか?
#コード
python
1class testclass(): 2 def __init__(self,hoge): 3 self.h = hoge 4 def func(self): 5 print(self.h) 6instance = testclass("output") 7instance.func()
#コード2
python
1class testclass(): 2 def __init__(instance,hoge): 3 instance.h = hoge 4 def func(instance): 5 print(instance.h) 6instance = testclass("output") 7instance.func()
インスタンスにはクラスの宣言部分であるtestclass部分は含まれないのでしょうか。
インスタンスの構造を調べることができればわかると思うのですが、適当な関数はありますか?
pprintでselfを出力してみたのですが、メモリの場所が出力されるのみでした。
アドバイスおねがいします。
> クラスの中にクラスが入る
とはどういう意味でしょうか?
self.__class__
みたいな話ですか?
回答ありがとうございます
selfの中にクラスのインスタンスが入るのなら
self.hd = hoge
が
instance.h = hoge
となるわけですよね
このinstanceの中にはクラスのインスタンスが入っているのなら
class testclass():
def __init__(self,hoge):
instance.h=hoge
というコード内のinstanceの部分に
class testclass():
def __init__(self,hoge):
instance.h=hoge
が繰り返し入ることになりませんか?
> このinstanceの中にはクラスのインスタンスが入っているのなら
インスタンスが入るのは、メソッドの第一引数です。
> が繰り返し入ることになりませんか?
とはどういう意味でしょうか?
失礼しました、2番めのコードの第一引数をinstanceとするところをselfと書いていました
インスタンスがselfに入ると
class testclass():
def __init__(instance,hoge):
instance.h=hoge
こういったコードになりますよね
上のinstance部分の中身がクラスのインスタンスということであれば、testclassの中にもう一つtestclassが含まれていることになりませんか?
> testclassの中にもう一つtestclassが含まれている
その意味を何度も聞いているのですが?
ごめんなさい 勘違いしていました。
回答1件
あなたの回答
tips
プレビュー