Python笔记:dict和set

dict字典:大括号键值对

dict全称dictionary,也称为map,使用键-值(key-value)存储,具有极快的查找速度。

相关操作

d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
# 获取一个key的值,如果不存在的key,会报错
# d['Michael']
# 95

# 设置key-value,如果已存在的key,value会被覆盖,如果不存在key,则产生新key-value
d['Adam'] = 67

# 使用 in 判断是否存在key
'Thomas' in d
# False

# 使用get()获取值,如果不存在会返回 None,或指定的value
d.get('Michael')
# 95
d.get('Thomas')
# None
d.get('Thomas', -1)
# -1

# 删除key,会删除对应的key-value
d.pop('Bob')

和list比较,dict有以下几个特点:

  1. 查找和插入的速度极快,不会随着key的增加而变慢;
  2. 需要占用大量的内存,内存浪费多。

而list相反:

  1. 查找和插入的时间随着元素的增加而增加;
  2. 占用空间小,浪费内存很少。

set:大括号只有键没有值的dict

set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

相关操作:

# 创建一个set需要一个list作为输入,重复的key会被过滤掉
s = set([1, 1, 2, 2, 3, 3])
print(s)
# {1, 2, 3}

# 使用 add(key) 添加元素,重复添加同一元素会被忽略
s.add(4)
print(s)
# {1, 2, 3, 4}

# 使用 remove(key) 删除元素
s.remove(key)
print(s)
# {1, 2, 3}

# set的交集和并集操作
s1 = set([1, 2, 3])
s2 = set([2, 3, 4])
print(s1 & s2)
# {2, 3}
print(s1 | s2)
# {1, 2, 3, 4}
Python笔记:dict和set

原文链接:https://beltxman.com/3191.html,若无特殊说明本站内容为 行星带 原创,未经同意禁止转载。

Scroll to top