我试图返回一个数字的绝对值,但是当使用一个字符串时,它会打印出“无”#。但是,我得到错误' UnboundLocalError:local variable' s'在转让之前引用'。
def absolute_value_safe(value):
if type(value) == str:
print ('None')
else:
s= abs(value)
return s
答案 0 :(得分:0)
如果条件的第一种情况触发,则未分配s
,因此return s
定义不明确。
确保在返回之前始终指定它:
def absolute_value_safe(value):
if type(value) == str:
print ('None') # Was this even intended to be here?
s = None
else:
s= abs(value)
return s