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

相关推荐
yaoxin5211231 小时前
325. Java Stream API - 理解 Collector 的三大特性:助力流处理优化
java·开发语言
光泽雨7 小时前
C# 中 Assembly 类详解
开发语言·c#
少控科技7 小时前
C#基础训练营 - 02 - 运算器
开发语言·c#
瞎某某Blinder8 小时前
DFT学习记录[4] 电子和空穴的有效质量计算全流程
python·学习
Riemann~~8 小时前
C语言嵌入式风格
c语言·开发语言
Liue612312319 小时前
基于YOLO11-C3k2-Faster-CGLU的路面落叶检测与识别系统实现
python
~央千澈~9 小时前
抖音弹幕游戏开发之第8集:pyautogui基础 - 模拟键盘操作·优雅草云桧·卓伊凡
网络·python·websocket·网络协议
占疏9 小时前
列表分成指定的份数
python
Gaosiy10 小时前
脑电python分析库MNE安装
python·脑机接口·脑电·mne
zmzb010310 小时前
C++课后习题训练记录Day104
开发语言·c++