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

相关推荐
非凡ghost15 小时前
MPC-QT视频播放器(基于Qt框架播放器)
开发语言·windows·qt·音视频·软件需求
转基因15 小时前
C++的IO流
开发语言·c++
一碗绿豆汤15 小时前
Java语言概述和开发环境-1
java·开发语言
愈努力俞幸运15 小时前
rust安装
开发语言·后端·rust
清水白石00815 小时前
深入 Python 的底层世界:从 C 扩展到 ctypes 与 Cython 的本质差异全解析
c语言·python·neo4j
Amelia11111115 小时前
day49
python
天天进步201515 小时前
【Nanobrowser源码分析4】交互篇: 从指令到动作:模拟点击、滚动与输入的底层实现
开发语言·javascript·ecmascript
console.log('npc')15 小时前
vue2中子组件父组件的修改参数
开发语言·前端·javascript
码点15 小时前
【无标题】日文字库Japan.ini
开发语言
IT=>小脑虎15 小时前
2026版 Python零基础小白学习知识点【基础版详解】
开发语言·python·学习