Python中字典的用法
注:以下所有示例使用的是Python3.5.版本
Python中的字典与C++中的map容器很相似,都是键值对的形式存储,然而Python中对字典的操作远比C++中对map的操作要方便的多。C++中的map与Python中字典的共同点是键是唯一的。
C++中声明一个map:map
Python中声明一个字典:dict = {} 由此便声明了一个空的字典。
向字典dict中添加数据dict["name"] = ‘Lisi’,当然Value的值也可以是一个列表或是元组也可以是另一个字典
dict = {} list = ['ZhangSan','Lisi','WangEr'] dict["name"] = list print(dict)输出:
{'name': ['ZhangSan', 'Lisi', 'WangEr']}
下面我们就来介绍下Python中字典的使用方法:
1 copy(self)方法,返回一个浅拷贝的字典
dict = {"name":"Tmac","age":24} test = dict.copy() print(test)输出:
{'age': 24, 'name': 'Tmac'}
2 fromkeys(seq, value=None)方法,创建一个新的字典,以seq中的所有元素作为键,以value作为默认的值。
test = {}.fromkeys('NBA',"Kobe") print(test)输出:
{'N': 'Kobe', 'B': 'Kobe', 'A': 'Kobe'}
3 get(self, key, default=None)方法,返回键key对应的value值,若没有该键返回默认值,默认值可指定
dict = {"name":"Tmac","age":24,'NBA':'kobe'} test = dict.get('name') print(test)输出:
Tmac
dict = {"name":"Tmac","age":24,'NBA':'kobe'} test = dict.get('Hi','HaHa') print(test)输出:
HaHa
4 items(self)方法,将字典中的键值对存入元组并以列表的形式返回
dict = {'name':'Tmac','age':24,'NBA':'kobe'} test = dict.items() print(test)输出:
dict_items([('name', 'Tmac'), ('NBA', 'kobe'), ('age', 24)])
5 keys(self)方法,返回一个以键组成的列表
dict = {'name':'Tmac','age':24,'NBA':'kobe'} test = dict.keys() print(test)输出:
dict_keys(['name', 'NBA', 'age'])
6 pop(self, key, default=None)方法,如果键存在则删除键并将其值返回,若没有返回默认值
dict = {'name':'Tmac','age':24,'NBA':'kobe'} test = dict.pop('NBA') print(test) print(dict)
输出:
kobe
{'name': 'Tmac', 'age': 24}
7 popitem(self)方法,从字典中删除并返回一个键值对
dict = {'name':'Tmac','age':24,'NBA':'kobe'} test = dict.popitem() print(test) print(dict)输出:
('name', 'Tmac')
{'NBA': 'kobe', 'age': 24}
8 setdefault(self, key, default=None)方法,返回字典中key对应的value值,若该key不存在可设置默认的返回值
dict = {'name':'Tmac','age':24,'NBA':'kobe'} test = dict.setdefault('age') print(test)输出:
24
9 update(self, other=None, **kwargs)方法,使用一个字典中的元素更新另一个字典,若该键值存在则重写该键值对
dict = {'name':'Tmac','age':24,'NBA':'kobe'} dict1 = {'key':'Test'} dict.update(dict1) print(dict)输出:
{'NBA': 'kobe', 'key': 'Test', 'name': 'Tmac', 'age': 24}
dict = {'name':'Tmac','age':24,'NBA':'kobe'} dict1 = {'age':38} dict.update(dict1) print(dict)输出:
{'NBA': 'kobe', 'age': 38, 'name': 'Tmac'}
10 values()方法,以列表的形式返回字典中value的值
dict = {'name':'Tmac','age':24,'NBA':'kobe'} test = dict.values() print(test)输出:
dict_values([24, 'kobe', 'Tmac'])