Python字典和集合

Python字典(Dict)和集合(set):

字典(Dict:使用键值(key - value)存储,通过key查找value的速度非常快。

集合(Set:拥有不重复的元素,无顺序

 

字典的特点

  1.key必须唯一

  2.key必须是不可变对象(不能是list等可变对象)

  3.字符串,整数都可以作为key

集合的特点

1.无序,不重复的元素

2.必须要以一个list 或者 tuple dict 作为输入集合(初始化必须是这3类)。

 

字典的操作

1.get(key): 查看dict中是否有key值,有返回True, 否则返回 False

2.下标访问:print(dict[key])  #这样没有key的话会报异常

3.添加数据dict[key] = date;   # 如果之前字典中没有key值,就是添加数据;若有的话,就是覆盖之前存在的数据。

4.删除数据dict.pop(key): 删除key链接的value

5.字典遍历

   一.键值key的遍历:

    for key in dict:

      print(key)

   二.value值的遍历:

    for value in dict.values():

    print(yalue)

  三.键值和vaule值的遍历:

    for k, v in dict.item():

    print(k, v)

  四.下标和value值的遍历(不常用):

    for i, v in enumerate(dict):

    print(i, v)

6.list的对比

  一.查找和插入的速度非常快,并且不会随着数据的增多而变慢

  二.浪费内存空间

 

 

集合的操作:

1.创建:

  s1 = set(list)

  s2 = set(tuple)

  s3 = set(dict)

2.添加数据

.插入单个元素

  s1.add(date)  :

注意事项: 不能添加listdict可变对象,但是可以用tuple;添加已经有的元素不会报错,但是没有效果。

.插入多个元素

  s1.update(date) : date可以使list, str, tuple 但是是将其中的元素打乱逐个添加,也可能有添加后有顺序。

 

3.删除元素:s1.remove(date) : 删除其中的date元素

4.遍历

  for i in set:

    print(i)

5.集合的运算(都是形成新的集合)

.交集:

  s1 = s2 & s3

.并集:

  s1 = s2 | s3

6.list tuple的转换

  s1 = set(lsit)

  list1 = list(s1)

  s2 = set(tuple)

  tuple1 = tuple(s2)

应用场景:用来对listtuple中的元素去重

 

 

 

 

 

原文地址:https://www.cnblogs.com/854594834-YT/p/10463659.html