布尔:True False,True就是为真,False就是为假
要谨记
0,None,空都为假,其余为真(空格都为真)
a = 0
if a:
print('ok')
else:
print('不ok')
引用计数和垃圾回收机制
一个内存地址可以对应多个门牌号,一个门牌号只能对应一个内存地址
1.在程序结束后,变量所占用的内存回收
2.在门牌号全部摘除,变量所占用的内存回收
1.可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典
2. 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)
可变类型:
l1 = [1,2,3,4]
print(id(l1))
l1[2] = 99
print(id(l1))
info = {
'name': 'fengzi',
'age': 18
}
print(id(info))
info['name'] = 'shuaige' #这种方式可以赋值
print(id(info))
info.get('name') = 'shuaige' #这种方式不能赋值
不可变类型
a = 10000
print(id(a))
a = 20000
print(id(a))
s = 'aaaa'
print(id(s))
s = 'bbbb'
print(id(s))