文章目录
创建一个字典
# 空字典
dic = dict()
{}
dic = {'name':'weiyan','age':18,'hometown':'Xinyang','School':'BIT','Birthday':'1998-07-05','tall':175}
获取字典的key和value
dic_keys = dic.keys()
dic_values = dic.values()
# 通过list转为列表
dic_keys_list = list(dic_keys)
dic_values_list = list(dic_values)
通过zip连接list为字典
dict_zip = dict(zip(dic_keys_list,dic_values_list))
dict_zip
{'name': 'weiyan',
'age': 18,
'hometown': 'Xinyang',
'School': 'BIT',
'Birthday': '1998-07-05',
'tall': 175}
tuple转字典
vegetables = [('celery', 1.58), ('brocoli', 1.29), ('lettuce', 2.19)]
dict(vegetables)
{'celery': 1.58, 'brocoli': 1.29, 'lettuce': 2.19}
字典基本操作
通过key访问value
a= dic['name']
a
'weiyan'
增加key-value对
就是直接对不存在的key赋值
dic['sex']=1
dic
{'name': 'weiyan',
'age': 18,
'hometown': 'Xinyang',
'School': 'BIT',
'Birthday': '1998-07-05',
'tall': 175,
'sex': 1}
删除key-value对
del dic['sex']
dic
{'name': 'weiyan',
'age': 18,
'hometown': 'Xinyang',
'School': 'BIT',
'Birthday': '1998-07-05',
'tall': 175}
## 修改key-value对
就是直接对已存在的key进行赋值
dic['name']="Weiyaner"
dic
{'name': 'Weiyaner',
'age': 18,
'hometown': 'Xinyang',
'School': 'BIT',
'Birthday': '1998-07-05',
'tall': 175}
## 判断key-value是否存在
通过in和not in 对key进行判断,因为key是关键标识符
print('name'in dic)
True
字典方法总结
python字典里面一共内置了11个方法
序 号 | 函 数 | 描 述 |
---|---|---|
1 | clear(self) | 清空字典 |
2 | copy() | 复制字典 |
3 | fromkeys(*args,**kwargs) | 创建一个新字典,所有key赋相同的值,参数1为key,参数2为value |
4 | get(self,k,d=None) | 获取指定key的value |
5 | items(self) | 以list返回可遍历的(key,value)键值对元组数组 |
6 | keys() | 获取所有的keys |
7 | pop(self,k,d=None) | 删除指定key所对应的值 |
8 | popitem(self) | 随即返回并删除一堆键值对 |
9 | setdefault(self,k,d=None) | 和get()类似,如果不存在这个键就创建一个key |
10 | update(self,E=None,**F) | 更新字典 |
11 | values(self) | 返回字典所有的value |
key必须可哈希
字典的key必须是可哈希的,比如nt/float/str/tupled等等,不可以是list/set/dict
什么是可哈希(hashable)?
一个对象在其生命周期里面不可变就是可哈希。