Python新手。我收到了一个错误,不知道如何修复它。如您所见,我在函数中使用soem全局变量,并在程序开始时将dict初始化为{}。在
def bin_criticality():
global gbv_bin_criticality, gbv_bin_element_ids, gbv_element_criticality
gbv_bin_criticality = {}
for (lv_key, lv_value) in gbv_bin_element_ids.items():
print (lv_key, lv_value)
lv_coil_ids = lv_value.split(',')
for coil_id in lv_coil_ids:
gbv_bin_criticality[lv_key] += int(gbv_element_criticality[coil_id])
return()
----错误
^{pr2}$
gbv_bin_criticality
是函数开头的空字典{}
,因此第一次尝试时:对于给定的值}。在
lv_key
,它在字典中还不作为键存在,因此{您有三个选项,要么先选中(LBYL):
^{pr2}$try
并优雅地失败(EAFP):或者使用^{} ,它将自动处理丢失的密钥,而不是普通的
dict
:另外,我会将}参数丢弃给函数,并在结尾处丢弃{}。在
global
s-makegbv_bin_element_ids
和{相关问题 更多 >
编程相关推荐