我用python编程,需要访问我给一个对象的名称,以便能够将其作为字符串传递(与另一个字符串连接)。在
我需要这样做的原因是,我使用的程序迫使我创建一个全局(在我的例子中是一个字典),我正在编写一个函数来处理几个不同的对象(每个对象都有相似的属性集,例如,object1的长度为2(在我的例子中表示2个神经元),分别标记为0和1,并且每个属性都有4个属性a、b、c、d。我想创建这些属性的“字典文件树”,但是object1和object2都是同一类的2个实例,因此我需要将第一级键更改为“NAME1_0”、“NAME1_1”、“NAME2_0”、“NAME2_1”)。在def Init(neuron,input):
#Initialises the neuron group, arguements are neuron (neurongroup) and input (neurongroup)
global dict
dict={}
for x in range(0,len(neuron)):
neuron[x].L=0
neuron[x].G=0
neuron[x].ron=1/period
neuron[x].roff=1/period
dict[x]={'tau_on':0.5,
'Non_off':neuron[x].roff*0.5,
'Non_off':neuron[x].ron*0.5,
'Ni_on':ones(len(input))*qon*0.5,
'Ni':ones(len(input))*qoff*0.5+ones(len(input))*qon*0.5,
'p_current':0,
'p_previous':0,
'my_tau_on':[],
'my_Non_off':[],
'my_Noff_on':[],
'my_Ni_on':[],
'my_Ni':[],
'my_p_on':[],
'my_ron':[],
'my_roff':[],
'my_theta':[],
'my_weights':[],
'my_record_times':[]}
dict['%s' % x, neuron]=dict.pop(x)
不起作用,因为它不指定对象的名称,而只给出对象本身的名称。为我的问题找一个更简单的例子
^{pr2}$