作者:书友40416624 | 来源:互联网 | 2023-05-18 13:06
在python中,有一种通过名字来引用值的数据结构,这种类型的数据结构成为映射。字典是Python中唯一内建的映射类型,具有以下特点:字典中的值是无序的值存在特定的键(key)下
在python中,有一种通过名字来引用值的数据结构,这种类型的数据结构成为映射。
字典是Python中唯一内建的映射类型,具有以下特点:
- 字典中的值是无序的
- 值存在特定的键(key)下
- 键(key)可以是数字,字符串或元组等不可变的数据类型。
字典由多个键及与其对应的值构成的键-值对组成:
phOnebook= {'Alic':'2341', 'Beth':'9102', 'Cecil':'3258'}
dict函数:
用于建立字典
>>> items = [('name','eastonliu'),('age',32)]
>>> d = dict(items)
>>> d
{'name': 'eastonliu', 'age': 32}
>>> d = dict(name='eastonliu',age=32)
>>> d
{'name': 'eastonliu', 'age': 32}
一、基本字典操作
1、len(d)返回字典中键-值对的数量
>>> d = {'name': 'eastonliu', 'age': 32}
>>> len(d)
2
2、d[k]返回关联到键k上的值
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d['name']
'eastonliu'
3、d[k]=v将值v关联到键k上
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d['score']=99
>>> d
{'name': 'eastonliu', 'age': 32, 'score': 99}
4、del d[k]删除键为k的项
>>> d = {'name': 'eastonliu', 'age': 32}
>>> del d['age']
>>> d
{'name': 'eastonliu'}
5、k in d 检查字典d中是否含有键为k的项
>>> d = {'name': 'eastonliu', 'age': 32}
>>> 'name' in d
True
>>> 'score' in d
False
二、字典的格式化字符串
>>> phOnebook= {'Alic':'2341', 'Beth':'9102', 'Cecil':'3258'}
>>> "Cecil's phone number is %(Cecil)s." % phonebook
"Cecil's phone number is 3258."
三、字典的方法
1、clear
用于清除字典中的所有项
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d.clear()
>>> d
{}
2、copy
返回一个具有相同键-值对的新字典
>>> x = {'name': 'eastonliu', 'age': 32}
>>> y = x.copy()
>>> y
{'name': 'eastonliu', 'age': 32}
3、fromkeys
使用给定的键建立新的字典,每个键都对应一个默认的None值
>>> dict.fromkeys(['name','age'])
{'name': None, 'age': None}
4、get
通过键返回字典中的值,当键不存在时,返回None
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d.get('name')
'eastonliu'
>>> print (d.get('score'))
None
5、items
以列表形式返回的键值对元组类型
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d.items()
dict_items([('name', 'eastonliu'), ('age', 32)])
6、keys
将字典中的键以列表形式返回
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d.keys()
dict_keys(['name', 'age'])
7、values
将字典中的值以列表形式返回
>>> d = {'name': 'eastonliu', 'age': 32}
>>> d.values()
dict_values(['eastonliu', 32])