Pythonでインタラクティブにクラスを生成する方法。
クラスのオブジェクトを定義しただけで、まだインスタンスは作っていない。
インスタンスを生成する。
クラスにある属性を調べる
なぜかインスタンスのほうは定義したものしか現れない。
呼ばれるまで作らないということなのか??
どのクラスに関連付けされているかを調べるには
あと付けで関数を定義して、それをクラスメソッドにする。
>>> class person: pass ... >>> person.name = "taro" >>> person.age = 26 >>> print person.name taro属性(attribute)を後付けで定義している。
クラスのオブジェクトを定義しただけで、まだインスタンスは作っていない。
インスタンスを生成する。
>>> x = person() >>> print x.name taro
クラスにある属性を調べる
なぜかインスタンスのほうは定義したものしか現れない。
呼ばれるまで作らないということなのか??
>>> x.name = "jiro" >>> person.__dict__.keys() ['age', '__module__', '__doc__', 'name'] >>> x.__dict__.keys() ['name']
どのクラスに関連付けされているかを調べるには
>>> x.__class__
あと付けで関数を定義して、それをクラスメソッドにする。
>>> def firstLetter(self): ... return self.name[0] ... >>> firstLetter(x) 'j' >>> person.method = firstLetter >>> x.method() 'j'
0 件のコメント:
コメントを投稿