标签:for 不可 今天 指定元素 == 并且 int 空间 没有
小数据池
小数据池:缓存机制(驻留机制)
==(用于判断两边的内容是否相等)
a=10
b=10
print(a==b)# ==用于判断两边的内容是否相等
is(用于判断两边内存地址是否相等)
a=10
b=10
print(a is b)#输出 True
"""
1、同一代码下,内容相同则内存地址相同
2、乘法相乘总长度不能超过20
3、惩罚的时候中文、特殊符号乘以0
"""
"""
1、同一代码下,内容相同则内存地址相同
2、数字相乘不能用浮点型
3、数字的范围:-5~256
"""
"""
1、同一代码下,内容相同则内存地址相同
2、字符串相乘总长不能超过20
3、乘法的时候中文、特殊字符相乘以1或0
"""
3.9 深浅拷贝
赋值
a=20#开辟一个内存空间存放20,a指向这个内存地址
b=a#把a的值赋值给b,这时b指向存放20的内存地址
print(id(a))
print(id(b))
结果为 1403154048 1403154048
1562835508499
浅拷贝
拷贝了最外围的对象本身,内部的元素都只是拷贝了一个引用而已。也就是,把对象复制一遍,但是该对象中引用其他对象我不复制
import copy #导入copy模块
a=[1,2,3,[4,5,6]]
b=a.copy
b[0]=5
print(a)
print(b)
结果为:[1,2,3,[4,5,6]]
[5,2,3,[4,5,6]]
b[-1][0]=9
print(a)
print(b)
结果为:[1,2,3,[9,5,6]]
[1,2,3,[9,5,6]]
外围和内部元素都进行拷贝对象本身,而不是引用。也就是把对象复制一遍,并且该对象中引用对象也复制
import copy
a=[1,2,3,[4,5,6]]
b=copy.deepcopy(a)
a[0]=7
print(a)
print(b)
结果为:[7,2,3,[4,5,6]]
[7,2,3,[4,5,6]]
a[-1][0]=9
print(a)
print(b)
结果为:[1,2,3,[9,5,6]]
[1,2,3,[9,5,6]]
深拷贝:拷贝第一层元素和第一层元素引用对象,不可变数据进行公用,可变的数据类型再次开辟空间
什么是集合?
可以理解成没有值的字典,无序,不支持索引
天然去重
定义集合
s = {1,"alex",False,(1,2,3),12,1,12,4,6,32,2,4}
print(s)
结果为{False, 1, 32, 2, 4, 6, 12, (1, 2, 3), ‘alex‘}
集合的增、删、改、查
s={1,2,3,4}
s.add("67")#只能添加一个
print(s)
结果为{1,2,3,4,"67"}
s={1,2,3,4}
s.update("今天")#迭代添加
print(s)
结果为:{1,2,3,4,"今","天"}
s={1,2,3,4}
print(s.pop())# pop有返回值 4
print(s)#{1,2,3}
s={1,2,3,4}
s.remove(1)#指定元素删除
print(s)#{2,3,4}
s={1,2,3,4}
s.clear()#清空 {}
s={1,2,3,4}
for x in s
print(x)
s1 = {1,2,3,4,5,6,7}
s2 = {5,6,7,1}
print(s1 & s2) # 交集
print(s1 | s2) # 并集
print(s1 - s2) # 差集
print(s1 ^ s2) # 反交集
print(s1 > s2) # 父集(超集)
print(s1 < s2) # 子集
print(frozenset(s1)) # 冻结集合 更不常用
dic = {frozenset(s1):1}
print(dic)
标签:for 不可 今天 指定元素 == 并且 int 空间 没有
原文地址:https://www.cnblogs.com/yhx003/p/11438399.html