Python的全局变量

我来举个例子

像下面,我把全局变量写在函数外面,导致func函数里得不到变量

正确做法应该是在函数内引入全局变量,利用global关键字

请注意!由于+1的操作导致全局变量发生改变,可能会影响到其他引用全局变量的地方。这点要注意。

还有另一个要注意的点,全局变量和局部变量的同名问题

如果函数内部的局部变量和全局变量同名,局部变量会遮蔽全局变量。

还有另一个问题,就是全局变量的内存管理

全局变量在程序的整个运行期间都占用内存。如果全局变量存储了大量的数据,它们可能会增加程序的内存占用。因此,要合理使用全局变量,避免不必要的全局变量定义,可以减少内存的使用。

也可以使用类属性来代替全局变量

相关推荐
wheeldown19 分钟前
【数学建模】数据预处理入门:从理论到动手操作
python·数学建模·matlab·python3.11
多打代码1 小时前
2025.09.05 用队列实现栈 & 有效的括号 & 删除字符串中的所有相邻重复项
python·算法
@CLoudbays_Martin111 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php
程序猿炎义1 小时前
【NVIDIA AIQ】自定义函数实践
人工智能·python·学习
THMAIL2 小时前
深度学习从入门到精通 - BERT与预训练模型:NLP领域的核弹级技术详解
人工智能·python·深度学习·自然语言处理·性能优化·bert
nuclear20112 小时前
Python 实现 Markdown 与 Word 高保真互转(含批量转换)
python·word转markdown·markdown转word·word转md·md转word
山烛2 小时前
深度学习:CNN 模型训练中的学习率调整(基于 PyTorch)
人工智能·pytorch·python·深度学习·cnn·调整学习率
THMAIL3 小时前
深度学习从入门到精通 - 神经网络核心原理:从生物神经元到数学模型蜕变
人工智能·python·深度学习·神经网络·算法·机器学习·逻辑回归
dbdr09013 小时前
Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十六天
linux·运维·服务器·网络·python·学习