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后面这个具体形式的解决方案,故放上自己的思考过程作为参考。也是一种记录。觉得简单的大佬轻喷。

相关推荐
霸道流氓气质4 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
ch6235 小时前
《AI 辅助编程实战:从零跑通一个 Excel 报表生成脚本的踩坑与复盘》
人工智能·python
import_random6 小时前
[python]conda和pip(区别和联系2)
python
Aurorar0rua6 小时前
CS50 x 2024 Notes Python - 01
开发语言·python·学习方法
用户6602676118797 小时前
备注接口返回成功,数据库却没变:怎样限定一次修复的范围?
python
Dumbness7 小时前
用 Python + UI Automation 读写微信 PC 版:一个群消息自动回复程序的实现与踩坑
python
艺杯羹7 小时前
Windows跨平台编码地雷全解:从GBK静默崩溃到内核级原子写入防御
人工智能·python·桌面客户端
用户8356290780517 小时前
使用 Python 在 Excel 中识别并高亮重复数据与唯一数据
后端·python
CCblandy7 小时前
Agent 工具调用怎么编排?本机实测:并行只到 2.63 倍,慢的先发省 30ms,CPU 活加 worker 无效
人工智能·后端·python·性能优化
用户8356290780517 小时前
使用 Python 在 Excel 中查找、替换数据并高亮显示
后端·python