UnboundLocalError: local variable ‘XXX‘ referenced before assignment解决办法
一、举例:
计算a到10的和
sum=0
def func(a):while a<=10:sum+=aa+=1return sum
print(func(9))
运行结果:
UnboundLocalError: local variable ‘sum’ referenced before assignment
二、原因分析
如果在一个范围内,对一个变量进行赋值,那么这个变量就会被认为是局部变量,就像在func()这个函数范围之内,我们对sum这个变量进行了重新赋值:sum+=a,那么编译器就会认为sum这个变量是一个局部变量,而这个赋值表达式实际上是从右向左进行的,也就是说,在进行sum+1运算的时候,sum并没有被定义,所以就爆出了这个UnboundLocalError错误。
三、解决办法
在对sum进行赋值之前,先用global关键字将sum变成一个全局变量,这样设置之后,编译器就会看到sum已经在函数之外定义过了,所以就不会报错。
sum=0
def func(a):global sumwhile a<=10:sum+=aa+=1return sum
print(func(8))
UnboundLocalError: local variable ‘XXX‘ referenced before assignment解决办法相关推荐
- 【报错】UnboundLocalError: local variable ‘XXX‘ referenced before assignment解决办法
参考这篇 https://blog.csdn.net/YZL40514131/article/details/122082820
- UnboundLocalError: local variable ‘loss’ referenced before assignment解决方法
UnboundLocalError: local variable 'loss' referenced before assignment 文章目录 UnboundLocalError: local ...
- UnboundLocalError: local variable ‘a‘ referenced before assignment(Python报错解决)
问题提出 使用Python编程的时候,要注意函数内可以访问全局变量,但不能更新(修改)其值. 比如: a = 10 def sum ( n ) :n += aprint ('a = ', a, end ...
- python的UnboundLocalError: local variable 'xxx' referenced before assignment
From: http://blog.sina.com.cn/s/blog_8d3652760101d01p.html 一.意思: 本地变量xxx引用前没定义. 二.错误原因 在于python没有变量的 ...
- Python问题:UnboundLocalError: local variable 'xxx' referenced before assignment
UnboundLocalError: local variable 'xxx' referenced before assignment 原因分析:函数使用时,没有定义. 解决方法:查看报错的变量是否 ...
- Python 解决 local variable ‘xxx‘ referenced before assignment
解决 local variable 'xxx' referenced before assignment 在刷leetcode的时候,定义全局变量后在函数中调用总是会出现这个错误,一直没搞明白,现在记 ...
- python UnboundLocalError: local variable 'log_f' referenced before assignment 错误
在写一个python程序,用finally处理异常的时候,报了"UnboundLocalError: local variable 'log_f' referenced before ass ...
- 【debug】UnboundLocalError local variable a referenced before assignment
1)下面这种情况是不会报错的: >>> x = 10 >>> def bar(): ... print(x) >>> bar() 10 (2)但是 ...
- python local variable 'xxx' referenced before assignment
python local variable 'xxx' referenced before assignment 代码 1 # -*- coding:utf-8 -*- 2 import sys 3 ...
最新文章
- 【怎样写代码】工厂三兄弟之工厂方法模式(四):工厂方法模式
- 磁盘IO:缓存IO、直接IO、内存映射
- 10_史上最全的Markdown使用教程(没有之一)(20190115)
- hdu 4099 字典树 + 斐波那契
- C++著名程序库的比较和学习经验
- F - 阿汤的疑惑(模拟取余+分解质因数)
- 使用计算机的优点缺点,计算机使用二进制的优缺点
- 子进程无法从标准输入读取数据
- (转)基于MVC4+EasyUI的Web开发框架经验总结(13)--DataGrid控件实现自动适应宽带高度...
- Machine Learning - I. Introduction机器学习综述 (Week 1)
- 浏览器文件服务器计算器设置,【魅蓝 U20使用总结】界面|浏览器|计算器|设置_摘要频道_什么值得买...
- 软件开发工程师能力模型
- 怎么把网页保存成pdf格式-最简单操作
- maya导入abc动画_带你直观了解三维动画设计
- FFmpeg将音频、无音频的视频合并为视频
- 单引号、双引号、三引号用法
- Linux操作命令分类详解 - 目录文件(二)
- 8.9.2 疯狂填词
- 怎么用计算机求数值等于log,怎么用计算器上的log?
- 用python打印学生名单_Python2爬取学生名单
热门文章
- 数据中心实现高效运维的秘诀
- nbu 恢复oracle数据库,关于使用nbu重定向恢复oracle数据库rman报错
- c# vscode 配置_使用VSCode开发C#项目
- DL之ShuffleNetV2:ShuffleNetV2算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
- CV之IS:计算机视觉之图像分割(Image Segmentation)/语义分割算法的简介、使用方法、案例应用之详细攻略
- Dataset之MNIST:MNIST(手写数字图片识别+ubyte.gz文件)数据集简介、下载、使用方法(包括数据增强)之详细攻略
- upload-labs-master文件上传靶场第七关详解
- github RL: DP
- [转载]input[type=file]在移动端各浏览器无法适配打开相机的问题。
- MySQL慢查询日志ES索引模板