0
は、ここで私は2 classes A
とB
、 Pythonで簡単に変数のプロパティを別の変数に移す方法はありますか?
class A(object):
def __init__(self):
self.a1=0
self.a2=0
self.a3=0
class B(object):
def GenerateA(self):
self.a=A()
#some codes go here
return self.a
a=A()
a.a1=1
a.a2=2
a.a3=3
b=B()
ainb=b.GenerateA()
print(ainb)
ainb.a1=a.a1
ainb.a2=a.a2
ainb.a3=a.a3
print(ainb)
class B
class A
の空のインスタンスを返すことができ
GenerateA()
の機能を有している(しかし、彼らは、ベンダーからなので、私はそれが正確に何をしたか分からないが)持っています。
class A
はインターフェイスクラスで、
B
にさらに計算のための値を知らせる。ここで私はすべてのプロパティの
ainb
を設定する必要があります。私は変わらず、そのアドレスを保つことができるように、私は
copy.deepcopy()
を想定、簡単な方法でセットアップ
ainb
に願っています
a=A()
a.a1=1
a.a2=2
a.a3=3
ainb.a1=a.a1
ainb.a2=a.a2
ainb.a3=a.a3
を行うことによって
ainb.a1=1
ainb.a2=2
ainb.a3=3
またはIをセットアップできます:私は直接、このように行うことができますメソッドは完全に私がしたくないアドレスを置き換えます。 ご意見はありますか? ありがとうございます!
'deepcopy()メソッドは完全にアドレスを置き換えます'どのアドレスですか? – njzk2
あなたはクラスAとクラスBの構造を変更できますか? –
申し訳ありません、私は完全に間違っているかもしれませんが、deepcopy()は元のものから深く新しいインスタンスを作成するので、クラスAの新しいインスタンスの完全に異なるアドレスを生成します。 –