Python基础-字典
为什么需要字典:
有时候我们需要存储一组相关的数据的时候,比如要存储一个人的信息,那么有username
,age
,birthday
等,如果这些信息都存储在列表中,或者数组中,比如['username','age','birthday']
那么用起来可能不是很方便。比较方便的操作是,我直接通过username
这个key
就可以拿到这个值,我通过username
就可以给这个key
设置值,那么就可以通过字典的方式实现我们的需求。
字典基础:
-
创建字典:我们可以通过两种方式创建字典:
person = {"username":"zhiliao","age":18}
或者是使用
dict
函数:person = dict(username='zhiliao',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':'zhiliao','age':18} print(a) a.clear() print(a)
-
get
:访问字典中那个键对应的那个值。这个方法不会抛出异常。a = {'username':'zhiliao','age':18} username = a.get('username') print(username) city = a.get('city') # 获取到的是一个None。 # 也可以指定一个,在没有获取到这个值时候的默认值 city = a.get('city','changsha') # 返changsha city = a['city'] # 抛出异常
-
pop
:用来获得对应于给定键的值,然后将这个键盘和值的项从字典中删除。会返回这个值。d = {'x':1,'y':2} d.pop('x')
-
popitem
:随机的移除字典中的一项。因为字典是无序的,所以是随机的。d = {'username':"zhiliao",'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)