UnboundLocalError 与作用域无关的造成原因与解决

今日编程时写到一处如下函数:

简单来说就是在try except块判断条件并计算出x,y,块外部未曾定义过x,y。

最终在其他文件调用时出现如下报错: 报错位置在于最后的append

在网上进行查询,人家都说是作用域 的问题,但总在于强调何时是局部,何时是全局,与变量名在等号的左侧还是右侧相关。但是此处是append函数,明显不是该问题

思考一番,且根据提示无值判断,原因应是try块正常执行,但没有符合条件的值,未对x,y赋值 ;因为这又不是错误,没有执行except块,x,y失去了进一步赋值的机会

所以在append的时候x,y就变成了一个没有值的局部变量。解决方法即在进入try块前先赋值,避免其为赋值而直接调用。

这里把except中的赋值放于前面。

总而言之,这是UnboundLocalError 与作用域无关的造成原因与解决

因看到网上较少对UnboundLocalError:cannot access local variable 'x' where it is not associates with a value后面这个具体形式的解决方案,故放上自己的思考过程作为参考。也是一种记录。觉得简单的大佬轻喷。

相关推荐
景彡先生3 分钟前
Python matplotlib详解:从入门到精通,数据可视化利器
python·信息可视化·matplotlib
程序员大雄学编程9 分钟前
用Python来学微积分22-费马定理
人工智能·python·数学·微积分
deephub20 分钟前
sklearn 特征选择实战:用 RFE 找到最优特征组合
人工智能·python·机器学习·sklearn·特征选择
程序员杰哥39 分钟前
外包干了三年,快要废了。。。
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
咩?39 分钟前
10.27-yolov5代码
人工智能·python·深度学习
gfdgd xi1 小时前
好消息:KMRE 安卓模拟器现可在Debian/GXDE使用
android·python·架构·bug·deepin·龙芯
烟锁池塘柳02 小时前
【已解决】解决CondaVerificationError:PyTorch安装包损坏问题
人工智能·pytorch·python
程序员爱钓鱼2 小时前
Python编程实战 | 函数与模块化编程 - 第三方库的安装与管理(pip使用)
后端·python·ipython
国服第二切图仔2 小时前
Rust开发之Result枚举与?运算符简化错误传播
开发语言·python·rust
程序员爱钓鱼2 小时前
Python编程实战 | 面向对象与进阶语法-类与对象的概念
后端·python·ipython