Python中字典的相关操作介绍
作者:Mar丶流年 发布时间:2021-03-16 07:48:54
标签:Python,字典
字典的添加与修改
# coding:utf-8
if __name__ == '__main__':
example = {'name': 'xie', 'age': 27}
example2 = example.copy()
example3 = example.copy()
'''
例1:使用dict[key] = value,这种方法如果dict中存在该key,则修改该key上的值=value,不存在该key,则创建该key=>value
例2:使用dict.setdefault(key,value),当dict中存在该key,则啥都不干。当dict中不存在该key,则创建该key=>value
dict.setdefault(key,value) 会返回dict[key]的值
例3:使用dict.update(dict2),可以理解成为两个字典的合并,重复时以dict2的key=>value 为准
'''
# 例1
example['school'] = '城南'
print(example) # {'name': 'xie', 'age': 27, 'school': '城南'}
example['name'] = 'rui'
print(example) # {'name': 'rui', 'age': 27, 'school': '城南'}
# 例2
result = example2.setdefault('name', 'rui')
print(result) # xie
print(example2) # {'name': 'xie', 'age': 27}
result = example2.setdefault('school', '城南')
print(result) # 城南
print(example2) # {'name': 'xie', 'age': 27, 'school': '城南'}
# 例3
example3.update({'name': 'rui'})
print(example3) # {'name': 'rui', 'age': 27}
example3.update({'name': 'xiang', 'school': '城南'})
print(example3) # {'name': 'xiang', 'age': 27, 'school': '城南'}
获取字典所有的key
# coding:utf-8
if __name__ == '__main__':
'''
例1:通过dict.keys() 获取dict所有key组成的伪列表
伪列表:只能看。不能修改,删除元素
通过list(dict_keys)能将伪列表变成真列表
'''
# 例1
example = {'name': 'xie', 'age': 27, 'sex': '男'}
keys = example.keys()
print(keys) # dict_keys(['name', 'age', 'sex'])
print(type(keys)) # <class 'dict_keys'>
print(type(list(keys))) # <class 'list'>
获取字典所有的value
# coding:utf-8
if __name__ == '__main__':
'''
例1:通过dict.values()获取dict中所有value组成的伪列表
通过list(dict_keys)将伪列表转成真列表
'''
# 例1
example = {'name': 'xie', 'age': 27, 'sex': 'man'}
values = example.values()
print(values) # dict_keys(['name', 'age', 'sex'])
print(type(values)) # <class 'dict_keys'>
print(type(list(values))) # <class 'list'>
获取字典key上的valule
# coding:utf-8
if __name__ == '__main__':
'''
例1:通过dict[key]获取value,如果key不存在则报错
列2:通过dict.get(key,default)获取key,如果key不存在则返回default,default默认None,性能比dict[key]小一丢丢,但不用去管报错的情况
'''
example = {'name': 'xie', 'age': 27, 'sex': 'man'}
# 例1
print(example['name']) # xie
# print(example['school'])报错
# 例2
print(example.get('name')) # xie
print(example.get('school')) # None
print(example.get('school', '城南花已开')) # 城南花已开
字典清空
# coding:utf-8
if __name__ == '__main__':
'''
例1:dict.clear()得到一个空字典
'''
example = {'name': 'xie'}
# 例1
example.clear()
print(example) # {}
通过索引删除字典元素
# coding:utf-8
if __name__ == '__main__':
'''
例1:dict.pop(key)删除字典key上的key=>value,如果key不存在,则报错
dict.pop(key)返回删除前dict[key]上的value
'''
example = {'name': 'xie', 'age': 27}
print(example.pop('age')) # 27
print(example) # {'name': 'xie'}
# example.pop('sex') sex在字典中不存在,报错
删除字典最后一个元素
# coding:utf-8
if __name__ == '__main__':
'''
例1:dict.popitem()删除最后一个元素的key=>value,如果dict是空字典则报错
dict.popitem()返回被删除元素key,value组成的元组(key,value)
'''
example = {'name': 'xie', 'age': 27}
# 例1
print(example.popitem()) # ('age', 27)
print(example) # {'name': 'xie'}
example.popitem()
# example.popitem() 空字典调用popitem会报错
来源:https://blog.csdn.net/qq_29744347/article/details/122830417


猜你喜欢
- 1.安装pyenv https://github.com/pyenv/pyenv-instal
- 闭包(closure)不是什么可怕的东西。如果用对了地方,它们其实可以很强大。闭包就是由其他函数动态生成并返回的函数,通俗地讲,在一个函数的
- 写在前面:前一段时间 kejun 给我们培训JavaScript的时候,在幻灯片上推荐了很多特别经典的文章,其中就有这一篇。读过之后感觉很不
- 我们知道,任何数据库系统都无法避免崩溃的状况,即使你使用了Clustered,双机热备……仍然无
- vue-router路由懒加载 和权限控制,今天刚好搞了一个基于node token验证的小demo所以下面介绍下,路由懒加载1、为什么要使
- 创建游戏文件 2048.py首先导入需要的包:import cursesfrom random import randrange, choi
- 使用了这么就pip命令,但是一直是简单使用,很多命令都是用了查,查了用,今天把常用的命令汇总一下,方便使用。命令:pip由上图可以看到 pi
- 从 github 下载https://github.com/acheong08/ChatGPT环境配置conda 创建虚拟环境我选择用 an
- 反馈说在选择时间时会出现遮挡选择器的情况,阻碍操作 如下图1,需要修改xadmin 文件 ,在widgets.py --->第28行添
- 访问phpmyadmin时总是出现 “无法载入 mysql 扩展,请检查 PHP 配置”。查看原因是“php_mysql.dll”无法载如。
- 一、asp.net中导出Execl的方法:在asp.net中导出Execl有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文
- Django实现内容缓存:1、内存缓存settings.py文件配置CACHES = { 'default':
- Pandas库十分强大,但是对于切片操作iloc, loc和ix,很多人对此十分迷惑,因此本篇博客利用例子来说明这3者之一的区别和联系,尤其
- 1、获取元素 2、获取数据 3、绑定数据 4、隔行换色&
- 本文实例讲述了python实现堆栈与队列的方法。分享给大家供大家参考。具体分析如下:1、python实现堆栈,可先将Stack类写入文件st
- HTML5真的是很强大,前端时间看到一个canvas实现九宫格的密码解锁。今天抽出时间模仿了一个,特定分享一下!效果截图如下:效果看起来还不
- 使用 str.split() 方法将字符串转换为数组,例如 array = string.split(',')。 str.s
- 下面是效果图,这个效果图是没有开启干扰码的效果图 下面是类代码 <?php /****************************
- Dreamweaver出现乱码,大致为两种情况:一是没有标明主页制作所用的文字,这种情况下很简单就可以
- 本文实例讲述了Python实现的人工神经网络算法。分享给大家供大家参考,具体如下:注意:本程序使用Python3编写,额外需要安装numpy