python学习day06

一、集合 set

1、集合是一个无序不重复元素的序列

v = {1,2,3,4,5,6,7,8}

# 空集合

v = set()

#空字典

v ={}     v = dict() 

2、独有功能

  • add:添加
  • discard:删除(因为是无序的,所以不能通过索引进行删除)
  • update
# add/discard
v = {1,2}
v.add(5)

k = {1,2}
k.discard(2)
print(v,k)

# 批量添加
s = {1,2}
s.update({'我','你'})
print(s)
  • intersection:交集
  • union:并集
  • difference:差集
  • symmetric_difference:对称差集

3、公共功能

  • len
  • for循环
  • 索引(无)
  • 步长(无)
  • 切片(无)
  • 删除(无)
  • 修改(无)

4、列表、字典、集合 -->不能放在集合中,集合不能作为字典的key(unhashable)

  • hash:在内部会有一个hash算法得到一个数值(对应内存地址),以后用于快速查找
  • 特殊情况
info = {
1:'ale',
True:'old'
}
print(info)
# 结果为{1:'old'}

二、内存相关

  • 赋值
  • 改变元素
  • id:查看内存所在的位置
  • is 和 ==的区别

== 是比较值是否相等,is是比较内存地址是否相等

三、深浅拷贝

四、补充

  • 反转
  • 排序
# 反转
v1 = [1,2,15,25,3,5]
v1.reverse()
print(v1)

# 排序
v1 = [1,2,15,25,3,5]
v1.sort() # 默认从小到大
print(v1)
  • 字典
    • keys/values/items
    • get
    • pop
    • update:存在更新,不存在添加
# dict  get
info = {'k1':2,'k3':4}
a = info.get('k1',0)
print(a)

# dict pop
info = {'k1':2,'k3':4}
a = info.pop('k1')
print(info,a)
# dict update
info = {'k1':2,'k3':4}
info.update({'k1':3,'k5':10})
print(info)
posted @ 2019-11-23 17:29  沉淀xy  阅读(132)  评论(0)    收藏  举报