Python中for循环中return报错了,SyntaxError:‘return‘ outside function

在for循环结束后,想要return一个值,但是报错了,说我’return’ outside function,但是我的return明明和for在同一格,为什么会报错呢?

for key in label_dict:
    prob = float(label_dict[key])/data_length #打球:4/5=0.8   不打球:1/5=0.2  循环目标值的在总数占比
    entropy -= prob*np.log2(prob)   #熵的计算公式 循环他的目标值的在总数占比
return  entropy                 #最终结果的计算为0.7219280948873623

后来发现,return是要放在一个函数里的,如下所示:

def ent(entropy):
    for key in label_dict:
        prob = float(label_dict[key])/data_length #打球:4/5=0.8   不打球:1/5=0.2  循环目标值的在总数占比
        entropy -= prob*np.log2(prob)   #熵的计算公式 循环他的目标值的在总数占比
    return  entropy                 #最终结果的计算为0.7219280948873623

这样就不报错了。

总结:return要放在def函数里!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值