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

相关推荐
xys_67817 小时前
深挖C语言:动态内存管理
c语言·开发语言
码云数智-园园17 小时前
Python如何将律师的Excel噩梦变成自动化系统
python·自动化·excel
belldeep18 小时前
python:Selenium 4.47 编码新的写法
python·selenium
卷无止境18 小时前
除了开发api,FastAPI其实也可以配合jinja2模板写页面
后端·python·fastapi
OPEN-F18 小时前
Python进阶教程:项目工程化与虚拟环境
开发语言·python
吴声子夜歌18 小时前
Java面试——基础
java·开发语言·面试
OPEN-F18 小时前
Python进阶教程:自动化办公实战
python·c#·自动化
minglie118 小时前
python串口的stream数据mock
python
晚风醉蝶18 小时前
1-16-计数排序-CountingSort
python·算法·排序算法
用户77833661321118 小时前
用搜索数据 API 做一个关键词联想组件(防抖 + 缓存 + 可复用)
python·api