内置数据结构(set)

内置数据结构(变量类型)

  • list
  • set
  • dict
  • tuple

set(集合)- (一堆确定的无序的唯一数据)

s = set()
print(type(s))
print(s)

# 此时,大括号里一定要有值,否则定义出的是一个dict
s = {1,2,3,4}


set()

集合的特征

  • 集合内数据无序,即无法使用索引和切片
  • 集合内部数据元素具有唯一性,可以用来排除重复数据
  • 集合内的数据,str,int,float,tuple,内部只能放置可哈希数据

创建set集合

自动过滤重复元素
s1 = {1,'A', 1, (2, 3)}
print(s1)    # {1, (2, 3), 'A'}

使用set函数
l1 = [1,2,3,4]  # list
s1 = set(l1)
print(type(s1))  #
print(si)          # {1, 2, 3, 4}

只存储key,不存储value
s1 = set({'Zhangsan':18, 'Wangwu':20})
print(s1)      # {'Zhangsan', 'Wangwu'}

增删元素

  • set元素不能是列表,因为列表是可变的
  • set元素不能是字典, 因为字典是可变的
s1 = {1,2,3,4}
s1.add(5)
print(s1)    # {1, 2, 3, 4, 5}
s1.add((2,3))
print(s1)    # {1, 2, 3, 4, 5, (2, 3)}

s1.add([66,55])    # 会报错
s1.add({"Tom":100})  # 会报错


插入整个list,tuple 字符串, 打破插入
s1 = {1,2,3,4,5}
s1.update([6,7])
s1.update((8,9))
s1.update("Amy")
print(s1)

{1, 2, 3, 4, 5, 6, 7, 8, 9, 'm', 'A', 'y'}  无序
删除对应元素
s1 = {1,2,3,4,5}
s1.remove(3)
print(s1)      # {1, 2, 4, 5}    OK

你可能感兴趣的:(内置数据结构(set))