0
class Class:
    _member = 1

    def method(self):

_member内からアクセスしたいのですmethod()が、正しい方法は何ですか?

4

4 に答える 4

2
class Class:
    _member = 1

    @classmethod
    def method(cls):
        print cls._member

Class.method()

と:

>>> Class().method()
1
>>> 
于 2014-10-07T11:35:01.370 に答える
1

self._memberオブジェクトの属性でない場合は、を使用できます( ) 。次に、クラス属性を含む必要があるクラスをself.__dict__検索すると思います。__dict__

于 2014-10-07T11:32:36.607 に答える
0
class Class:
    _member = 1

    def method(self):
        print(Class._member)

Class().method()

出力は次のようになります。

1

ちなみに、それは Class 属性です。メソッドをバインドされたメソッドとして呼び出すことができます。staticmethod (最初のパラメーターは不要)、classmethod (最初の 1 つのパラメーターはクラス)、および通常のメソッド (このようなもの) のオプションがあります。

于 2014-10-07T11:52:23.463 に答える
0
class Class:
   _member = 1

   def method(self):
      print "value is ",self._member

クラスのインスタンスを作成し、メソッドを呼び出します

c = Class()
c.method()

出力:

value is 1
于 2014-10-07T11:34:35.737 に答える