Python世界:报错Debug之referenced before assignment

Python世界:报错Debug之referenced before assignment

一句话总结

类中函数引用结构体变量,出现报错如下:

Python Debug:local variable 'split_num' referenced before assignment

解决:该变量改为全局变量使用,并在用前声明 global split_num

案例分析

使用背景:在函数内部定义变量,再接着定义子函数,引用了该变量。

如下面代码就会报错:local variable 'depth' referenced before assignment

python 复制代码
def f1():
depth = 0
    def func():
         depth += 1
    func()
return

根因分析:

  • 本质是函数内部声明的变量,默认类型是局部变量。
  • 而跟全局变量同名时,先引用局部变量,会不符合预期,提示未被初始化。

全局变量报错:UnboundLocalError: local variable 'l' referenced before assignment

相关推荐
南极星100512 小时前
2026电赛E题有感
python·opencv·电赛
看浪的路人12 小时前
第3讲:代码补全引擎
开发语言·windows·python
小小龙学IT13 小时前
Day 26-27 项目实战:从零构建一个高并发聊天室(epoll + 线程池)
linux·服务器·c语言·开发语言·网络
想会飞的蒲公英13 小时前
PyTorch 学习率实战:从零理解衰减策略与调度器
人工智能·pytorch·python·深度学习·机器学习
布值倒区什么name13 小时前
python文件IO学习
python
我就是妖怪13 小时前
【无标题】
开发语言
丁引13 小时前
《数据清洗的艺术:如何用20行核心逻辑优雅地删除无标签图片》
前端·数据库·python
梦想的旅途213 小时前
企业微信API二次开发:外部群模块功能清单与全场景对接
java·python·企业微信
05664614 小时前
Python高级——迭代器
开发语言·python·学习
初级代码游戏14 小时前
iOS开发 Swift 速记4:函数与闭包
开发语言·ios·swift