Python学习笔记——可变类型&不可变类型&深拷贝&浅拷贝
来源:互联网 发布:java表示一个数的次方 编辑:程序博客网 时间:2024/06/05 15:20
可变类型&不可变类型
可变类型:字典(dict),列表(list)
不可变类型:数字(包括int,float等),字符串(str),元组(tuple)
什么是可变&不可变?
num = 100print(id(num))num += 100print(id(num))print(num)
Output:
>>>10917536
>>>10920736
>>>200
我们看到执行完num+=100,num变量的值修改到了200,为什么
还要说是不可变类型呢。注意到打印出来的id,发现两个num的地
址不同,并非同一个num。过程如下图
也就是说由于num是不可变类型,系统重新定义了一个num变量指向200。
我们在来看一下可变类型,
dict_test = {1:"leo"}print(id(dict_test))dict_test[2] = "mike"print(id(dict_test))print(dict_test)
Outpu:
>>>139729179319240
>>>139729179319240
>>>{1:”leo”, 2:”mike”}
结果并没有像上面的num一样,重新产生一个变量。所以,可变与
不可变的本质是针对value部分而言,num = 100,num2 = 200,
num2 = num是完全可以的,只是将num2引用指向value为100的
内存地址。
阅读全文
0 0
- Python学习笔记——可变类型&不可变类型&深拷贝&浅拷贝
- python 可变不可变类型
- python可变类型与不可变类型
- 可变拷贝与不可变拷贝
- Python探索记(16)——Python的可变类型与不可变类型
- python 可变 与 不可变类型
- python中的可变与不可变类型
- Leetcode 39: python可变类型复制(浅拷贝和深拷贝)
- python学习笔记——浅拷贝与深拷贝
- Python学习笔记——深拷贝与浅拷贝
- python的可变类型和不可变类型
- Python 引用 :可变类型和不可变类型
- Python函数之可变类型与不可变类型
- Python的可变类型与不可变类型
- Python的可变类型与不可变类型
- 可变类型和不可变类型
- Python学习笔记(九)—Python中的赋值、浅拷贝和深拷贝(含图)
- Python学习笔记——可变对象和不可变对象
- Http(2)
- 单词数
- 使用 markdown/html 写latex by jupyter
- ssm通讯录管理系统--1
- Http(1)
- Python学习笔记——可变类型&不可变类型&深拷贝&浅拷贝
- oracle DBaaS即将改变格局
- maven新建webapp后,运行@Test或print报错 错误: 找不到或无法加载主类
- 实例探索Java模式之路——合成模式
- java内存管理深入浅出
- 二分法插入排序
- 插入排序
- C语言作业-2-1时间换算
- CentOS-6.8离线安装gcc