Python 引用全局变量提示:local variable referenced before assignment. 问题解决办法,global使用方法介绍
local variable 'a' referenced before assignment
就是说变量a在使用前没有被声明
可能的情况一般有两种:
情况一:变量没有被赋值直接引用了
def hello():print(a) # 没有给a赋值,不知道a是什么
情况二:函数引用全局变量的时候没有声明
就是说函数里想引用全局变量的话,函数前面要告诉函数这个变量是全局的,不然默认就是函数里能使用的局部变量。
a = 3def hello():global a # 声明引用的是全局变量print(a)
扩展:
实例1:
不使用 global,内部赋值,外部不变,作为局部变量。
money = 1000
def work(m):money = 1 + mprint("内部money的值:" + str(money))work(200)
print("外部money的值:" + str(money))
实例2:
使用 global,内部赋值,外部改变,作为全部变量。
money = 1000
def work(m):money = 1 + mprint("内部money的值:" + str(money))work(200)
print("外部money的值:" + str(money))
实例3:
不使用 global,内部可以引用其值。
money = 1000
def work(m):money = 1 + mprint("内部money的值:" + str(money))work(200)
print("外部money的值:" + str(money))
实例4:
不使用 global,既包含引用,又包含赋值时,就会在函数内部看是否先赋值,如果不是就会报错。
money = 1000
def work(m):h = money + mprint("h的值为:" + str(h))# 实例3的基础上额外加个赋值。money = hprint("内部money的值:" + str(money))work(200)
喜欢的点个赞❤吧!
Python 引用全局变量提示:local variable referenced before assignment. 问题解决办法,global使用方法介绍相关推荐
- Python:PyCharm提示Local variable ‘x‘ value is not used
Python:PyCharm提示Local variable 'x' value is not used 问题描述: Python:PyCharm提示Local variable 'x' value ...
- python 错误--UnboundLocalError: local variable '**' referenced before assignment
1 val = 9 2 def test(flag): 3 if flag: 4 val = 1 5 else: 6 print("test") 7 return val 8 9 ...
- UnboundLocalError: local variable referenced before assignment
写笔记的第二天,另外希望自己能慢慢打动自己的女神누나 昨天,突然遇到了一个在函数内部修改全局变量却报错的问题,在网上查了下发现是经典问题,记一下日后慢慢消化. 提醒自己,函数内部修改全局变量时要思考三 ...
- 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 b
一.意思: 本地变量xxx引用前没定义. 二.错误原因 在于python没有变量的声明 , 所以它通过一个简单的规则找出变量的范围 :如果有一个函数内部的变量赋值 ,该变量被认为是本地的,所以 ...
- UnboundLocalError: local variable ‘XXX‘ referenced before assignment解决办法
一.举例: 计算a到10的和 sum=0 def func(a):while a<=10:sum+=aa+=1return sum print(func(9)) 运行结果: UnboundLoc ...
- python可以实现哪些功能_Python中实现机器学习功能的四种方法介绍
本篇文章给大家带来的内容是关于Python中实现机器学习功能的四种方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在本文中,我们将介绍从数据集中选择要素的不同方法; 并使用S ...
- python计算最大公约数和最小公倍数_python求最大公约数和最小公倍数的方法介绍...
python求最大公约数和最小公倍数的方法介绍 发布时间:2020-04-28 10:42:38 来源:亿速云 阅读:114 作者:小新 今天小编给大家分享的是python求最大公约数和最小公倍数的方 ...
- 解决Python报错:local variable ‘xxxxx‘ referenced before assignment
解决方法 在函数中使用global 变量的方法声明使用的这个变量是全局变量 问题解析 这是因为在希望修改全局变量时修改的是局部变量 比如: def add():a += 1a = 1 add() pr ...
最新文章
- TVM自定义数据类型
- JDBC中的SPI实现
- JSP生成静态html网页
- LVS NAT模式跨子网部署方法
- vue 如何读取编译携带的参数
- 与Intel一较高下:个人纯手工打造CPU
- cmd怎么导入mysql文件,使用cmd工具如何导入大容量sql文件到mysql数据库
- 计算机里什么文件无法删除,电脑里面有哪些不能删除的文件?
- Typora恢复忘记保存的文件
- 【屏类型结构体定义PanelType】 文档位置:《apiPNL.h》
- 磁盘在计算机没显示win10,win10机械硬盘检测不到怎么解决?
- Pthon中的输出函数
- SPSS可以制作哪些图表?
- Verilog状态机常见三种写法
- ELS3120代替品MPCS-341 3A 光电耦合器 用于IGBT/MOSFET隔离栅极驱动芯片
- 浅谈 FFT (终于懂一点了~~)
- mysql复合索引(联合索引)的使用场景
- python+opencv-12 黑帽和礼帽运算
- 移民双N省,一定要清楚这些条件!
- joda-time使用方法