私は完全な初心者ではありませんが、Pythonにはかなり慣れていません。今日プロジェクトに取り組んでいる間、私はちょうどアイデアを思いつき、「自己」の使い方について疑問に思いました。私はこれについてしばらく読んでいますが、それが常に必要かどうかはまだわかりません。私の質問は、クラスのインスタンスとインスタンスのパラメーター/変数のみに関するものです。この質問は、すべてのインスタンスに影響するクラス変数に関するものではありません。
例:
class C:
def __init__(self, parent = None):
super(C, self).__init__(parent)
self.some_temp_var = AnotherClass()
self.important_property = self.some_temp_var.bring_the_jewels()
ins_c = C()
print ins_c.important_property
上記のコードでは、両方の変数宣言 ( some_temp_varとimportant_property ) の前にselfを使用しています。
後で外部 (インスタンスが作成された場所) から **important_property**にアクセスし、場合によってはそれを変更する必要があります。
しかし、AnotherClass() のインスタンスやそれを指す変数 ( some_temp_var ) にアクセスする必要はありません。it クラスのインスタンスが 1 回だけ必要であり、そのメソッド Bring_the_jewels を 1 回だけ実行して、 important_property の値を入力する必要があります。
その変数も宣言する前に、まだ self を使用する必要がありますか?
self.some_temp_var = ....
self.important_property = ....
またはそれができます:
some_temp_var = ....
self.important_property = ....
ご協力ありがとうございました。
Ps。私は長い方法で研究を行いました。私の英語および/またはCSの知識が不足しているため、現在存在する複製を見つけられなかった可能性がありますが、検索を行い、多くの検索を行いました. この質問を「重複」または「非建設的」と呼ぶ前に、よく読んでください。これは明確な答えのある質問であり、非常に重要で複雑な問題です。ご理解いただきありがとうございます。