112 lines
3.9 KiB
Plaintext
112 lines
3.9 KiB
Plaintext
=================================
|
||
Notes
|
||
Author: Flora Chen
|
||
-_- -_- -_- -_- -_- -_- -_- -_-
|
||
=================================
|
||
|
||
******字典dict******
|
||
1. 字典的定义
|
||
花括号{}表示字典,字典中的元素是由键值(key:value)对组成的,每个元素用逗号隔开。
|
||
字典是没有下标索引的,其键key就是索引。
|
||
第一种:直接通过{'key': value}的形式定义
|
||
dic = {'a': 11, 'b': 12}
|
||
第二种:使用dict()转换[('key', value), ('key', value) ...]这种数据类型
|
||
dic = dict([('a', 11), ('b', 12)])
|
||
第三种:dict(key = value, key = value ...)
|
||
dic = dict(a=11, b=12)
|
||
|
||
示例:
|
||
dic = {}
|
||
dict2 = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
print(type(dic)) # 输出结果:<class 'dict'>
|
||
print(dict2) # 输出结果:{'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
print(dict2['name']) # 输出结果:flora
|
||
|
||
2. 字典中的相关规范
|
||
字典中的键不能重复。
|
||
字典中的键只能使用不可变类型(字符串,数值类型,元组)的数据(通常是用字符串)。
|
||
字典中的值可以是任何数据类型。
|
||
|
||
扩展:
|
||
不可变类型的数据:数值类型,字符串,元组
|
||
可变类型的数据:列表,字典,集合
|
||
|
||
3. 字典的相关操作
|
||
添加一个元素
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
dic['height'] = 156
|
||
print(dic)
|
||
# 输出结果:{'name': 'flora', 'age': 18, 'phone': '10220020200', 'height': 156}
|
||
|
||
添加多个元素
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
dic.update({'height': 156, 'heavy': '56kg'})
|
||
print(dic)
|
||
# 输出结果:{'name': 'flora', 'age': 18, 'phone': '10220020200', 'height': 156, 'heavy': '56kg'}
|
||
|
||
修改元素:键已存在就是修改。否则是新增。
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
dic['phone'] = '18956423668'
|
||
print(dic)
|
||
# 输出结果:{'name': 'flora', 'age': 18, 'phone': '18956423668'}
|
||
|
||
删除元素
|
||
pop():通过键去删除指定的键值对,返回键对应的值
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
res = dic.pop('phone')
|
||
print(res) # 输出结果:10220020200
|
||
print(dic)
|
||
# 输出结果:{'name': 'flora', 'age': 18}
|
||
|
||
popitem():删除最后添加进去的键值对,以元组的形式返回一个键值对
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
res = dic.popitem()
|
||
print(res) # 输出结果:('phone', '10220020200')
|
||
print(dic)
|
||
# 输出结果:{'name': 'flora', 'age': 18}
|
||
|
||
|
||
查找元素
|
||
通过键进行索引取值,键不存在会报错
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
res = dic['phone']
|
||
print(res) # 输出结果:10220020200
|
||
|
||
get():通过键获取对应的值,键不存在不会报错,但是会返回None
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
res = dic.get('phone')
|
||
print(res) # 输出结果:10220020200
|
||
res2 = dic.get('heg') #键不存在
|
||
print(res2) # 输出结果:None
|
||
|
||
获取字典中的所有键,所有值,所有键值对
|
||
keys():获取字典中所有的键
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
print(dic.keys()) # 输出结果:dict_keys(['name', 'age', 'phone'])
|
||
print(list(dic.keys())) # 可通过list()转换成列表
|
||
# 输出结果:['name', 'age', 'phone']
|
||
|
||
values():获取字典中所有的值
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
print(dic.values()) # 输出结果:dict_values(['flora', 18, '10220020200'])
|
||
print(list(dic.values())) # 可通过list()转换成列表
|
||
# 输出结果:['flora', 18, '10220020200']
|
||
|
||
items():获取字典中所有的键值对
|
||
示例:
|
||
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
|
||
print(dic.items()) # 输出结果:dict_items([('name', 'flora'), ('age', 18), ('phone', '10220020200')])
|
||
print(list(dic.items())) # 可通过list()转换成列表
|
||
# 输出结果:[('name', 'flora'), ('age', 18), ('phone', '10220020200')]
|
||
|
||
|