为什么需要字典:
有时候我们需要存储一组相关的数据的时候,比如要存储一个人的信息,那么有username,age,birthday等,如果这些信息都存储在列表中,或者数组中,比如['username','age','birthday']那么用起来可能不是很方便。比较方便的操作是,我直接通过username这个key就可以拿到这个值,我通过username就可以给这个key设置值,那么就可以通过字典的方式实现我们的需求。
字典基础:
创建字典:我们可以通过两种方式创建字典:
person = {"username":"hlcoding","age":18}
或者是使用dict函数:
person = dict(username='hlcoding',age=18)
基本操作:
len(d):返回字典的键值对的长度。
d[k]:获取k这个key对应的值。
d[k] = v:设置键为k的值为v,如果字典中不存在键为k的这一项,那么自动的添加进去。
del d[k]:删除d这个字典中键为k的这一项数据。
k in d:检查d这个字典中是否包含键为k的这一项。
字典中的键可以是任意的不可变类型,比如:浮点类型、整形、字符串或者元组。
字典常用方法:
clear:清除字典中所有的项。
a = {'username':'hlcoding','age':18}
print(a)
a.clear()
print(a)
get:访问字典中那个键对应的那个值。这个方法不会抛出异常。 ``` a = {'username':'hlcoding','age':18} username = a.get('username') print(username) city = a.get('city') # 获取到的是一个None。 # 也可以指定一个,在没有获取到这个值时候的默认值 city = a.get('city','china') # 返changsha city = a['city'] # 抛出异常
pop:用来获得对应于给定键的值,然后将这个键盘和值的项从字典中删除。会返回这个值。
d = {'x':1,'y':2} d.pop('x')
popitem:随机的移除字典中的一项。因为字典是无序的,所以是随机的。
d = {'username':"hlcoding",'age':18} d.popitem() # 随机弹出一个值
update:用一个字典更新另外一个字典,如果碰到相同的键,则会覆盖。
a = {'url':'http://www.baidu.com/','title':"baidu"} b = {"url":"http://www.google.com/",'new_value':"new_value"} a.update(b) print(a)
setdefault:如果字典中包含有给定键,则返回该键对应的值,否则返回为该键设置的值,并且会设置值到字典中。
## 遍历字典:
遍历字典中所有的key:使用keys方法,这个方法将所有的键以列表的方式返回。
a = {"url":"www.baidu.com",'title':"baidu"} for x in a.keys(): print(x)
遍历字典中所有的value:使用values方法,这个方法将所有的值以列表的方式返回。
a = {"url":"www.baidu.com",'title':"baidu"} for x in a.values(): print(x)
遍历字典中所有的键值对:使用items方法,这个方法将所有的键和值以列表的方式返回。
a = {"url":"www.baidu.com",'title':"baidu"} for key,value in a.items(): print(key) print(value) ```
—— 本文来自火龙信奥(义乌睿码科技):义乌青少年信息学奥赛与编程教育平台,专注 CSP-J/S、NOIP、GESP 竞赛培训,线上线下融合教学,助力编程升学。网址:hlcoding.com