python中“全局变量”之谜

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

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

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

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

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

亲爱的你,看明白了么?

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

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

相关推荐
m0_624578591 小时前
MySQL主从复制支持跨版本吗_不同版本间同步的注意事项
jvm·数据库·python
yuanpan1 小时前
Python Pygame 入门教程:从零学会创建窗口、绘图和游戏交互
python·游戏·pygame
2401_871492851 小时前
如何在 React Router v6 中正确配置多路由组件显示
jvm·数据库·python
神仙别闹2 小时前
基于Python(Django)+MySQL 实现(Web)SQL智能检测系统的设计与实现
python·mysql·django
甄心爱学习2 小时前
【项目实训】法律文书智能摘要系统4
python·github·个人开发
huzhongqiang3 小时前
Playwright理解与封装
python
zhangchaoxies3 小时前
MySQL触发器能否监控特定用户操作_结合审计功能实现分析
jvm·数据库·python
qq_413502023 小时前
如何解决ORA-12518监听程序无法分配进程_内存耗尽与PGA溢出
jvm·数据库·python
zhangrelay3 小时前
三分钟云课实践速通--大学物理--python 版
linux·开发语言·python·学习·ubuntu·lubuntu
djjdjdjdjjdj4 小时前
如何用参数解构在函数入口处直接提取对象属性
jvm·数据库·python