ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python字典常用函数使用详解(内附详细案例)

2021-12-31 09:31:50  阅读:235  来源: 互联网

标签:dict1 key Python 内附 key1 详解 dict value1 键值


「作者主页」:士别三日wyx
  此文章已录入专栏《Python入门到精通》
  2021最新版Python小白教程,针对0基础小白和基础薄弱的伙伴学习

提示:点击列表中蓝色「函数名」可直达函数解析区域

函数名作用使用
update修改/插入键值对dict.update({‘key’: ‘value’})
pop删除键值对根据键dict.pop( ‘key’ )
popitem删除最后插入的键值对dict.popitem()
clear删除所有键值对dict.clear()
get获取值根据键dict.get( ‘key’ )
setdefault获取值根据键,键存在时获取值,键不存在时插入键值dict.setdefault( ‘key’, ‘value’ )
keys获取所有键dict.keys()
values获取所有值dict.values()
items获取所有键值对dict.items()
copy获取字典的副本dict.copy()

update()

语法

dic.update( iterable )

参数

  • iterable:需要插入/修改的键值对(字典或可迭代对象)

「存在」时,会修改对应的值

dict1 = {'key1': 'value1', 'key2': 'value2'}
dict1.update({'key1': 'new_value'})
print(dict1)

输出:

{'key1': 'new_value', 'key2': 'value2'}


「不存在」时,会插入键值对
dict1 = {'key1': 'value1', 'key2': 'value2'}
dict1.update({'key3': 'value3'})
print(dict1)

输出:

{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

get()

语法

dict.get( key, value)

参数

  • key:指定的键名
  • value:可选,当键不存在时,返回该值(默认返回None)

根据「键」获取「值」

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key1'))

输出:

value1


当获取的键 「不存在」时,返回 「自定义内容」
dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key', '键不存在'))

输出:

键不存在

setdefault()

语法

dict.setdefault( key, value )

参数

  • key:指定键名
  • value:可选,插入的值(键不存在时生效)

当键「存在」时,「返回」键对应的值,第二个参数不生效,类似get()函数;
当键「不存在」时,「插入」该键值对

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.setdefault('key1'))  # 键存在时获取值
print(dict1)
# 获取键(key3)的值,如果键(key3)不存在,则插入键值对(key3:value3)
print(dict1.setdefault('key3', 'value3'))
print(dict1)

输出:

value1
{'key1': 'value1', 'key2': 'value2'}
value3
{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

标签:dict1,key,Python,内附,key1,详解,dict,value1,键值
来源: https://blog.csdn.net/wangyuxiang946/article/details/122247086

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有