python中“全局变量”之谜

全局变量,是不是以为着在整个程序中的值都是一样的,是不是都是同一个呢?

我们通过下面的例子来看全局"变量之变"

上面的程序运行结果如下:

从上面的运行结果可以看出:尽管变量num被声明为全局变量,在每一个子程序运行时,它还是分别被deepcopy了一次,成为了全新的变量,在经过+5 和+10之后,又生成了新的变量和变量值。只有在子程序之外的全局变量num在程序运行之处为1,在子程序运行之后,主程序中的全局变量num仍然为1,并且它的id值都是一样的,说明它是同一个内存变量。

从什么的程序中,我们可以深刻理解全局变量在程序不同位置的不同。

亲爱的你,看明白了么?

特别提醒:即便是同样的程序,每次运行时,内存ID都是不一样的,说明,程序在每一次运行时,都启用了全新的内存空间。

又一次运行同一个程序的运行结果:

相关推荐
木觞清1 小时前
Django学习第三天
python·学习·django
电饭叔1 小时前
《python程序语言设计》2018版第5章第52题利用turtle绘制sin函数
开发语言·python
YCCX_XFF212 小时前
ImportError: DLL load failed while importing _imaging: 操作系统无法运行 %1
开发语言·python
FutureUniant4 小时前
GitHub每日最火火火项目(7.7)
python·计算机视觉·ai·github·视频
杰哥在此4 小时前
Java面试题:讨论持续集成/持续部署的重要性,并描述如何在项目中实施CI/CD流程
java·开发语言·python·面试·编程
PY1785 小时前
Python的上下文管理器
数据库·python·oracle
Struggle to dream6 小时前
Python编译器的选择
开发语言·python
爱看书的小沐7 小时前
ASCII码对照表(Matplotlib颜色对照表)
python·matplotlib·rgb·ascii·colormap·颜色对照表·颜色映射
算法金「全网同名」7 小时前
算法金 | 推导式、生成器、向量化、map、filter、reduce、itertools,再见 for 循环
python·机器学习·数据分析
nuclear20117 小时前
Python 如何批量压缩PDF文件或减小PDF文件大小
开发语言·python·压缩pdf·减小pdf文件大小