Python-之基础篇7

1、深浅拷贝

 

a = [[1,2],3,4]
b = a.copy()    #  浅拷贝只拷贝第一层
c = a.deepcopy()    #  深拷贝 = 克隆一份

b = a
a[2] = 3       #  改变原来指针指向内存地址的值,不会新开辟地址空间
print(a,b)

#变量之间的转换
c = 1
d = c
c = 2          # 新开地址空间
print(c,d)

2、集合(set)

# 集合是一个无序的,不重复的数据组合,它主要作用如下:
#      ① 去重,把一个列表变成集合,就自动去重了
#      ② 关系测试,测试两组数据之前的交集、差集、并集等关系
#      ③ 每一个元素必须是可哈希的值(元素不是变量)
#      ④ 集合本身不可哈希,不能作字典的键
#      ⑤ frozenset()不可变集合
#      ⑥ 是一个无序的

# 1、创建集合
a = (1,3,4)
b = tuple([4,5,6])    #  元组的两种创建方式
print(a)
print(b)

s = set('alex li')  # 集合只有这一种创建方式
print(s)


# 2、访问集合
s1 = set('alvin')
print('a' in s1)       # 判断集合是否存在并返回布尔值
print('b' in s1)


# 3、更新集合
s2 = set('alex')
s2.add('aec')   #写啥加啥
s2.update('akdad')   # 单个元素逐个加进去,并去掉重复的元素
s2.update([12,'alex'])
s2.remove('l')     # 删除元素
s2.pop()           # 随机删除
s2.clear()         # 清空集合
del s2             # 从内存中删除,就不存在了


# 4、集合类型操纵符
a = set([1,2,3,4,5,6])
b = set([4,5,6,7,8,9])
# ① intersectiom()   交集interc
a.intersection(b)    # {4,5,6}
a & b

# ② union 并集
a.union(b)      #{1,2,3,4,5,6,7,8,9}
a | b

# ③ difference 差集
a.difference(b) # {1,2,3} 在a不在b
a - b
b.difference(a)   # {7,8.9} 在b不在a
b - a

# ④ symmetric_difference() 对称差集,a和b的交集不在其中
a.symmetric_difference(b)
a ^ b

# ⑤ 父集(超集)
a.issuperset(b)  # b在不在a里面
a > b

# ⑥ 子集
a.issubset(b)   # a是不是b的子集
a < b



aa = set([1,2,3,4,5,6])
ee = set([1,2,3])
c = aa.issuperset(ee)
print(c)

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值