對於Python初學者(例如I)來說是一個挑戰,我需要創建包含浮點數值列表字典的對象。我想這個流程中,對象似乎在線創建,但代碼將停止在其中我嘗試更多的價值附加到一個已經創建的對象行,告訴我說:如何將float添加到字典中的列表
AttributeError: 'float' object has no attribute 'append'
這是一段代碼,我使用了這一使命:
class Wimp(object):
def __init__(self, mass, definitions):
self.mass = mass
self.dN_dx = {}
for definition in definitions:
self.dN_dx[definition] = []
print definition, "added"
print "Wimp of mass", self.mass, "created."
wimp_data = {}
i=0
for mass in nu_e_mass:
if mass == nu_e_mass[i+1]:
#Saving the columns into arrays
if mass not in wimp_data:
wimp_data[mass] = Wimp(mass, definitions)
for j in range(1, len(definitions)):
wimp_data[mass].dN_dx[definitions[j]] = float(nu_e[j][i])
else:
for j in range(1, len(definitions)):
wimp_data[mass].dN_dx[definitions[j]].append(nu_e[j][i])
#print mass, "Same mass", nu_e_mass[i+1]
if i < (len(nu_e_mass)-2):
i = i+1
else:
#Integrating the columns and storing into Wimp class
#print mass, "Skipping to next mass", i, nu_e_mass[i+1]
i = i+1
如果有人能找到這個錯誤會因爲我對這個代碼現在凝視時間是偉大的..
你可能更好,如果你創建一個'add_value(DEF,值)'的'Wimp'類方法。 –