python(1) - 变量小测试
2024-10-20 04:06:02
下面看一道题目:
a = 3
b = a
a = 5
print(a,b)
程序最后输出的a,b值分别是多少呢?
先想一想,然后我们执行一下看看正确答案:
正确答案 a 的值是5, b的值是3,为什么b的值没有随a的值的变化而变化?下面分析一下原因:
这里先介绍一个函数id(), 它可以查看变量的内存地址;好了,下面开始分析:
将程序拆分一下,先将3赋给a, 然后查看一下内存地址
再将a赋给b,然后查看b的内存地址
可以看出,b和a的内存地址是一样的
再将5赋给a, 查看a的内存地址
可以看到a的内存地址发生了变化,a指向了一个新的内存地址。
整个过程如下图所示:
最新文章
- hadoop2的automatic HA+Federation+Yarn配置的教程
- 微软职位内部推荐-Sr Development Lead-OSG-IPX
- maven 解决 Eclipse is running in a JRE, but a JDK is
- Java——String.split()函数
- HttpModule,HttpHandler,HttpHandlerFactory
- TCP Socket的通讯框架
- BZOJ 1050 [HAOI2006]旅行comf
- 原生JavaScript之“淘宝轮播图”
- 如何快速把 Vue 项目升级到 webpack3
- Go Lang
- mysql 开发基础系列10 存储引擎 InnoDB 介绍
- ubuntu下chrome浏览器安装flash插件(pepperflashplugin-nonfree)
- JavaScript非数字(中文)排序
- jenkins编辑报错Exception when publishing, exception message的解决办法
- Blender 作的鸭脖
- ubuntu安装python-ldap模块
- VS2015 调试 条件和操作设置
- Python设计模式(六大)
- POJ 3080 Blue Jeans 找最长公共子串(暴力模拟+KMP匹配)
- Python图形界面Tk
热门文章
- android sdk manager 闪退 打不开问题
- 通过源码学Java基础:InputStream、OutputStream、FileInputStream和FileOutputStream
- thymeleaf中的th:assert用法
- 怎样提交FIREDAC数据集的DELTA到中间件然后保存进数据库
- [iOS UI进阶 - 3.0] 触摸事件的基本处理
- HTTP常见错误 400/401/403/404/500及更多
- MSSQL导入数据时,出现“无法截断表 因为表正由Foreign key引用”错误
- -webkit-appearance: none;去处select默认小箭头样式
- PHP实现基于Swoole简单的HTTP服务器
- 测试URL有效性