python-基础-不可变量和可变量数据类型

不可变量和可变量数据类型

#就是变量的右边是存在内存之中的,它自己有一个地址,左边的变量名只是
#对它的地址的存储,右边的值得地址是不变的
a = 1
print(id(a)) #267114672
print(id(1))#267114672
b = a
print(id(b))#267114672

a = 2
print(id(a))#266262720
# 1.不可变类型(内存中数据不允许修改)
# 数字类型:int、bool、float、complex、long
# 字符串:str
# 元组:tuple
# 2.可变类型:内存中的数据可以被修改,但是地址不会改变
# 列表:list
# 字典:dict

a_list = [1,2,3,4]
print(id(a_list))#23279056
a_list.append(7)
print(id(a_list))#23279056  #字典也一样的,就不举例了
# 注意的是:字典里的key只能使用  不可变量  的数据类型
# 1.可变类型的数据变化,是通过方法来是实现的
# 2.如果给一个可变类型的变量,复制了一个新的数据类型,引用会修改
# 变量不再对之前的数据引用
# 变量改为对新的赋值的数据的引用
d = {"name":"xiaoming"}
d[1] = "整数"
print(d)
d[(1,)] = "元组"
print(d)#{'name': 'xiaoming', 1: '整数', (1,): '元组'}
d[[1,3,4]] ="列表"
print(d) #字典和列表不可以
# 解释一下为什么:hash的作用,因为key-value,键是唯一的,
# 所以就是key只能是不可变类型的数据类型,以便进行增删改查
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值