python实例大全-11个Python3字典内置方法大全与示例汇总

概述

在绝大部分的开发语言中与实际开发过程中,Dictionary扮演着举足轻重的角色。从我们的数据模型到服务器返回的参数到数据库的应用等等,Dictionary的身影无处不在。

在Python中,Dictionary是一种可变的容器类型。所谓容器类型,就是我们放置数据的地方。不同于List的有序、操作时对数据类型统一性的要求较严格,Dictionary是一种可变的、不限存储对象、无序的数据模型。

字典有着类似列表的高灵活度的特点,而与列表通过偏移索引的存取元素的方式不同,字典是通过无序的键来存取键值对的,即字典是任意对象的无需集合,可在原处增加或减少,且支持任意深度的嵌套(即可以包含诸如列表,其他的字典等),下面就介绍了Python提供的11个字典内置方法的基本概述及简单示例。

方法

描述

clear

清除字典中所有键值对

copy

对字典进行浅拷贝,如需详细了解可以参考上上节可变对象的浅拷贝和深拷贝详解《Python列表赋值,复制,深拷贝以及5种浅拷贝详解》

fromkeys

fromkeys(*args, **kwargs) 创建一个新字典,以序列的中元素做字典的键,value 为字典所有键对应的初始值

get

get(self, k, d=None) 获取指定键k对应的值,如果该键不存在则返回d,默认为None 该方法可以用来判断某键是否包含在字典内

items

返回类似集合的可遍历的(键, 值) 元组列表

keys

返回类似集合的可遍历的键列表

pop

删除一个键并返回其对应的值

popitem

随机返回并删除字典中的一对键和值(一般删除末尾对),若列表为空再调用此方法会抛出KeyError异常

setdefault

setdefault(self, k, d=None) 函数和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值

update

更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中,将键值对添加到字典中,可能是字典,也可能是键-值对序列,详见实例

values

返回类似集合的可遍历的值列表

示例代码

# dict

import copy

# 示例字典

D = {

'name': 'Ruo Data',

'web': {

'site': 'https://www.ruodata.com',

'basic': 'github'

},

'major': 'python'

}

print(D)

print('clear'.center(40, '-'))

# clear|清除字典中所有键值对

D1 = copy.deepcopy(D)

D1.clear()

print(D1)

print('copy'.center(40, '-'))

# copy|对字典进行浅拷贝,如需详细了解可以参考上上节可变对象的浅拷贝和深拷贝详解《Python列表赋值,复制,深拷贝以及5种浅拷贝详解》

D2 = copy.deepcopy(D)

D2_copy = D2.copy()

D2_copy['web']['articl_nums'] = 2

print(D2)

print('fromkeys'.center(40, '-'))

# fromkeys| fromkeys(*args, **kwargs) 创建一个新字典,以序列的中元素做字典的键,value 为字典所有键对应的初始值

D3 = dict.fromkeys(D)

print(D3)

D3 = dict.fromkeys(D, 'SSS')

print(D3)

print('get'.center(40, '-'))

# get| get(self, k, d=None) 获取指定键k对应的值,如果该键不存在则返回d,默认为`None` 该方法可以用来判断某键是否包含在字典内

value = D.get('name')

print(value)

# 判断键`'TEAM'`是否存在于D中:

if D.get('TEAM'):

print(D.get('TEAM'))

else:

print(None)

print('items'.center(40, '-'))

# items| 返回类似集合的可遍历的(键, 值) 元组列表。

items = D.items()

print(items)

# 利用items 遍历字典打印键值对:

for key, value in D.items():

print('{}: {}'.format(key, value))

print('keys'.center(40, '-'))

# keys| 返回类似集合的可遍历的键列表

keys = D.keys()

print(keys)

print('pop'.center(40, '-'))

# pop| 删除一个键并返回其对应的值

D4 = copy.deepcopy(D)

value = D4.pop('name')

print(value)

print(D4)

print('popitem'.center(40, '-'))

# popitem| 随机返回并删除字典中的一对键和值(一般删除末尾对),若列表为空再调用此方法会抛出KeyError异常

D5 = copy.deepcopy(D)

key_value = D5.popitem()

print(key_value)

print(D5)

print('setdefault'.center(40, '-'))

# setdefault| setdefault(self, k, d=None) 函数和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值。

D6 = copy.deepcopy(D)

key_value = D6.setdefault('major')

print(key_value)

key_value = D6.setdefault('UNKONW_KEY', 'UNKOWN_VALUE')

print(key_value)

print(D6)

print('update'.center(40, '-'))

# update| 更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中,将e中键-值对添加到字典d中,e可能是字典,也可能是键-值对序列。详见实例。

D7 = copy.deepcopy(D)

# 传一个字典

D7.update({'three': 3, 'four': 4})

print(D7)

# 传关键字

D7.update(five=5, six=6)

print(D7)

# 传一个包含一个或多个元组的列表

D7.update([('seven', 7), ('eight', 8)])

print(D7)

# 传一个包含一个或多个列表的元组

D7.update((['nice', 9], ['ten', 10]))

print(D7)

# 传一个zip()函数

D7.update(zip(['eleven', 'twelve'], [11, 12]))

print(D7)

# 使用以上任意方法修改存在的键对应的值

D7.update(one=111, two=222)

print(D7)

print('values'.center(40, '-'))

# values| 返回类似集合的可遍历的值列表

values = D.values()

print(values)

201951393820327.jpg?201941393841

示例结果

201951393853228.jpg?201941393913

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值