我正在處理需要處理一組相關變量的程序。我想他們都捆綁成一個類,所以我可以直觀地訪問它們...在for循環中創建實例變量
class transition():
...
t1 = transition(stuff_to_initialize)
retrieve_that_variable = t1.that_variable_in_initialized_stuff
,但我希望能夠從我的聲明實例變量的for循環:
class transition(object):
''' instance of a transition includes...
'''
# order convention for uncertainty terms Cij
__order = {'c11': 1, 'c22': 2, 'c33': 3, 'c12': 4, 'c13': 5, 'c23': 6}
__vector = {'Rx': 0.0, 'Ry': 0.0, 'Rz': 0.0}
def __init__(self, cij=__order, vector=__vector):
# Things that a transition instance must specify
self.layer_type = 0
for item in cij.keys():
self.item = 0
for item in vector.keys():
self.item = 0
但在本例中,初始化transition
實例後,我只有一個實例變量transition.item
。
我可以從變量名稱列表初始化實例變量嗎?
如果我理解你,你想動態地命名這些東西?爲什麼不只是創建一個變量來保存您用作參考的字典副本? – BlivetWidget
如果我正確地理解了你,這是一個[壞主意](http://nedbatchelder.com/blog/201112/keep_data_out_of_your_variable_names.html)。 – That1Guy