いくつかのクラスを表す Python オブジェクトのリストがあります。クラスは明らかに異なりますが、いくつかの共通の属性があります (オブジェクトごとに値が異なります)。例えば:
class Super1:
def __init__(self, value1, value2):
self.value1 = value1
self.value2 = value2
#Lot's of other stuff
class Sub1(Super1):
def __init__(self, value1, value2, value3):
Super1.__init__(self, value1, value2)
self.value3 = value3
#Lot's of stuff
class Sub2(Super1):
def __init__(self, value1, value2, value4):
Super1.__init__(self, value1, value2)
self.value4 = value4
#Lot's of stuff
objects = [Sub1(1.,2.,3.), Sub1(213.,2.,23.), Sub2(23.,10.,0.2), Sub1(3.,2.,12.)]
さて、利便性とパフォーマンスの両方のために、これらすべての値の NumPy 配列が必要になります。私はこれらを次のように読めることを知っています:
np.array([objects[ii].value1 for ii in range(4)])
しかし、配列形式でもインスタンス メソッド内でも個別に値を変更する必要もあります。ポインターなどを使用して、オブジェクトの属性と配列内の対応する値を何らかの方法で動的にリンクすることは可能ですか?
いいえ、ここのオブジェクトはリストである必要はありません。提案を歓迎します。