Python中字典的用法

Python中字典的用法

注:以下所有示例使用的是Python3.5.版本

Python中的字典与C++中的map容器很相似,都是键值对的形式存储,然而Python中对字典的操作远比C++中对map的操作要方便的多。C++中的map与Python中字典的共同点是键是唯一的。

C++中声明一个map:map<int,string>m_Test;

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'])


以下是Python字典的使用方法: 1. 创建字典: ```python # 使用大括号创建空字典 my_dict = {} # 使用大括号创建带有键值对的字典 my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} # 使用 dict() 函数创建带有键值对的字典 my_dict = dict(key1='value1', key2='value2', key3='value3') # 从列表创建字典,列表的元素是由键值对组成的元组 my_dict = dict([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')]) ``` 2. 访问字典的值: ```python # 使用键来访问字典的值 value = my_dict['key1'] print(value) # 输出:value1 # 使用 get() 方法来访问字典的值,如果键不存在,则返回指定的默认值 value = my_dict.get('key2', 'default') print(value) # 输出:value2 # 使用 keys() 方法获取字典的所有键 keys = my_dict.keys() print(keys) # 输出:dict_keys(['key1', 'key2', 'key3']) # 使用 values() 方法获取字典的所有值 values = my_dict.values() print(values) # 输出:dict_values(['value1', 'value2', 'value3']) # 使用 items() 方法获取字典的所有键值对 items = my_dict.items() print(items) # 输出:dict_items([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')]) ``` 3. 更新字典: ```python 使用赋值语句更新字典的值 my_dict['key1'] = 'new value' print(my_dict) # 输出:{'key1': 'new value', 'key2': 'value2', 'key3': 'value3'} # 使用 update() 方法更新字典的值 my_dict.update({'key2': 'new value', 'key3': 'new value'}) print(my_dict) # 输出:{'key1': 'new value', 'key2': 'new value', 'key3': 'new value'} ``` 4. 删除字典的键值对: ```python # 使用 del 关键字删除指定的键值对 del my_dict['key1'] print(my_dict) # 输出:{'key2': 'new value', 'key3': 'new value'} # 使用 pop() 方法删除指定的键值对,并返回被删除的值 value = my_dict.pop('key2') print(value) # 输出:new value print(my_dict) # 输出:{'key3': 'new value'} # 使用 clear() 方法清空字典的所有键值对 my_dict.clear() print(my_dict) # 输出:{} ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值