いくつかのインスタンス変数を持つクラス( "A"という名前)があります。インスタンスのdir()への追加
がclass A(object):
def __init__(self, x, y):
self.x = x
self.y = y
class X(object):
def f_x(self):
pass
class Y(object):
def f_y(self):
pass
x = X(); y = Y()
a = A(x,y)
は私が
dir(a)
に表示されるようにF_Xとf_yをしたい:私は、たとえばクラスA
のインスタンスのディレクトリ()にこの変数のディレクトリを()を追加したいです
は、より良い方法はあります、または1つ以上「正しい」、ちょうどX. 辞書とY. dictのを反復より、各要素について、のようなものを使用します。
をsetattr(A, str(element), element)
ありがとうございました。
あなたは何をしたいですか?あなたが書いたことはあまり意味がありません –
@フランクリン:まず、ありがとう。私の実際の例を単純化するために、クラスXとYはどちらも私に「与えられた」もので、両方ともカプセル化したいいくつかの機能を実装しています。 したがって、私の実際の例では継承が正しいとは確信していません。 私は、私のクラス(クラスA)のユーザーが、インスタンス変数としてxとyを保持していることを知らずに、XとYの両方からすべての関数を見ることができるようにしたいだけです。 – Stav
クラスのユーザーは実際にインスタンス変数を知らなくてもそれらの関数を実際に呼び出すことができますか?もしそうなら、どうですか?もしそうでなければ、あなたは**本当に** **どうやって**可能なのかを尋ねていますか? –