首页 > 解决方案 > 将函数结果分配给与函数同名的变量时出现 UnboundLocalError

问题描述

为什么我越来越

UnboundLocalError:分配前引用的局部变量“热图”

在下面的脚本就行了heatmap = heatmap()

def heatmap():
    heatmap = "123"
    return heatmap

def run():
   heatmap = heatmap()
   return heatmap

print(run())

标签: python

解决方案


因为您对函数和局部变量使用相同的名称。不应该这样做。

这一行:

heatmap = heatmap()

首先声明新变量heatmap,从而隐藏函数,然后尝试调用heatmap()来初始化它。但是此时已经没有这个函数了,因为从现在开始它就是一个局部变量了


推荐阅读