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

相关推荐
亲持红叶40 分钟前
Chapter4.1 Coding an LLM architecture
人工智能·python·gpt·自然语言处理·transformer
xianwu54342 分钟前
cpp编译链接等
linux·开发语言·网络·c++·git
懒大王爱吃狼1 小时前
Python基于wordcloud库绘制词云图
开发语言·python·学习·python基础·python学习
wjs20241 小时前
Ruby 中文编码
开发语言
山语山1 小时前
C#多线程精解
开发语言·数据库·后端·c#
海绵波波1071 小时前
RAG(Retrieval-Augmented Generation,检索增强生成)流程
python·语言模型
froginwe112 小时前
SQLite AND/OR 运算符
开发语言
我是唐青枫2 小时前
C# Lambda 表达式详解
开发语言·c#·.net
CharlesC++2 小时前
JAVA类和对象练习
java·开发语言
编码浪子2 小时前
进军AI大模型-Langchain程序部署
linux·python·langchain