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

相关推荐
用户298698530142 分钟前
Python 将 Word 文档转换为图片的实践指南
后端·python·api
十年一梦惊觉醒3 分钟前
快手视频发布助手,全自动视频发布带货工具
开发语言·前端·javascript
弈栈录3 分钟前
LangChain Agent 实战:快速构建可调用工具的智能体
python·架构
Java后端的Ai之路3 分钟前
一文搞懂 GitHub Actions-CICD
开发语言·大模型·github·cicd·action
码匠许师傅6 分钟前
【C++三方组件】开篇总论:为什么需要以及如何选型?
开发语言·c++
cvby21 分钟前
C++11--右值引用和移动语义
开发语言·c++
en.en..33 分钟前
TCP/UDP 收发流程(网络字节序---函数讲解)
开发语言·php
宸津-代码粉碎机39 分钟前
Spring AI 高危CVE漏洞深度复盘|生产禁跑版本汇总+临时防御+修复方案
java·大数据·人工智能·python·spring
名字还没想好☜1 小时前
Go 用 json.Decoder 流式解析大 JSON:边读边处理不爆内存
开发语言·后端·golang·go·json
xiangyun611 小时前
【408数据结构 03】线性表与顺序表:C++手写SeqList
开发语言·数据结构·c++