前提・実現したいこと
pythonの初心者です。pythonでクラスメソッドで書かれたものをインスタンスメソッドに書き換えたいのですが、エラーが出てしまい実行できません。 元のクラスメソッドのやつは
class ClassSample:
class_var="hoge"
@classmethod
def class_method(cls):
print("%s"%(cls.class_var))
ClassSample.class_method()
発生している問題・エラーメッセージ
--------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-72-401ddbec06d1> in <module>() ----> 1 ClassSample.class_1(self.cls()) NameError: name 'self' is not defined
該当のソースコード
class ClassSample: class_var='hoge' def class_1(self,cls): self.cls=cls print('%s'%(self.cls.class_var)) ClassSample.class_1()
試したこと
ClassSample.class_1()のところを色々いじってみたのですが駄目でした
補足情報(FW/ツールのバージョンなど)
使っているのはJupyterLabのnotebookです。
初心者なので根本的なところから間違っているかもしれません。
わかりにくい質問かもしれませんが、もしわかる方がいらっしゃればご回答をお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/03 06:23