字典是Python中常用的一个数据类型。

与列表有相似的用法,表现在列表的下标和字典的键值可以通过相似的方式读取数据:

list_name[0] = value
dict_name['key'] = value

初始化一个空字典

from collections import defaultdict

dict_name = defaultdict(float)

这种方法会赋一个空值:

参数值 空值
float 0.0
int 0
str ''

或者直接声明一个空字典:

dict_name = {}

向字典dict中添加不存在的键值key

dict_name = {}
dict_name[key] = value

获取字典的长度

len(dict_name.keys())

读取字典dict中不存在的键值

dict_name.get(key, defalut)

如果dict()中有键值key,会返回dict[key]的值;

如果dict()中没有键值key,就会返回defalut

删除字典中的键值对

dict_name.pop(key)

参考:

https://blog.csdn.net/wqwqwqwq403/article/details/79361346/

遍历字典

# 1 获得键值key和值value = a[key]
for key in a:
# 2 获得键值key和值value = a[key]
for key in a.keys():
# 1和2效果相同 # 3 仅获得value
for value in a.values(): # 4 获得的kv是元组:(key,value)
for kv in a.items(): # 5 获得键值key和值value
for key,value in a.items():
# 6 获得键值key和值value
for (key,value) in a.items():
# 5和6效果相同

参考:

https://www.cnblogs.com/stuqx/p/7291948.html

给字典排序

有两种方法

# 法一
dict_order = sorted(dict_name.iteritems(),key=lambda x:x[0],reverse=False)
# 法二 略快
from operator import itemgetter
dict_order = sorted(dict_name.items(), key=itemgetter(0), reverse=True)
# 以上两种方法里的数字,0代表按照键排序,1代表按照键值排序 # 排序后字典会变为元组,可以转回字典
dict_order = dict(dict_order)

注意:python3.5之后可能出现iteritems()的报错,改成items()即可。

采用iteritems(),是因为这样做排序后字典不会变成元组

  • iteritems()以迭代器对象返回字典键值对
  • items以列表形式返回字典键值对

https://www.cnblogs.com/williamjie/p/9182619.html

https://blog.csdn.net/studyzwb/article/details/98596226

参考:

https://blog.csdn.net/mingyuli/article/details/104443362?utm_medium=distribute.pc_relevant.none-task-blog-2

在使用中遇到其他新问题将继续更新。

[Python]-字典-实践经验总结的更多相关文章

  1. python字典中的元素类型

    python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...

  2. python 最佳实践与资源汇总

    python 最佳实践 (部分) 一. 结构化工程 文件 功能 README.rst readme LICENSE 许可证 setup.py 打包和发布管理 requirements.txt 开发依赖 ...

  3. Python入门经典. 以解决计算问题为导向的Python编程实践

    Python入门经典. 以解决计算问题为导向的Python编程实践(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1juLsew8UiOErRheQPOuTaw 提取 ...

  4. Python 最佳实践指南 2018 学习笔记

    基础信息 版本 Python 2.7 Python 3.x Python2.7 版本在 2020 年后不再提供支持,建议新手使用 3.x 版本进行学习 实现 CPython:Python的标准实现: ...

  5. selenium通过python字典获取配置

    python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...

  6. CI Weekly #6 | 再谈 Docker / CI / CD 实践经验

    CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试. DevOps 等实践教程.工具与资源,以及一些工程师文化相关的程序员 Ti ...

  7. Python字典和集合

    Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...

  8. python 字典排序 关于sort()、reversed()、sorted()

    一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...

  9. python字典copy()方法

    python 字典的copy()方法表面看就是深copy啊,明显独立 d = {'a':1, 'b':2} c = d.copy() print('d=%s c=%s' % (d, c)) Code1 ...

随机推荐

  1. Spring Boot:整合Swagger

    1.先创建一个SpringBoot项目 其中application.properties文件中是创建项目时自动添加的配置. 2.添加相关maven依赖 <!--swagger--> < ...

  2. PMP 考试常见工具与技术点总结

    转载请注明出处: 网络图:项目进度活动之间的逻辑关系,用来推算关键路径,最大浮动时间等: 横道图(甘特图):以图示的方式,通过活动列表和时间刻度,来展示项目获得那个顺序和持续时间 责任分配矩阵:每件事 ...

  3. Java封装Get/Post类

    封装的类: package pers.hmi.translate; import java.io.BufferedReader; import java.io.IOException; import ...

  4. 配置SSM公钥及创建远程仓库和在IEDA中集成git操作

    3.将.ssh下的id_rsa.pub公钥copy到gitee工作台中 4.创建个人仓库 5.设置开源许可证:开源是否可以随意转载,开源但是不能商业使用,不能转载,- 限制! 6.克隆到本地! IDE ...

  5. 浅学hello world

    Hello world 1.随便新建一个文件夹,存放代码 2.新建一个java文件 .后缀名为.java .Hello.java .[注意点]系统没显示后缀名的可以自己手动打开 3.编写代码 publ ...

  6. 基于ABP实现DDD--聚合和聚合根实践

      在下面的例子中涉及Repository.Issue.Label.User这4个聚合根,接下来以Issue聚合为例进行分析,其中Issue聚合是由Issue[聚合根].Comment[实体].Iss ...

  7. 【Unity基础知识】认识常用的生命周期函数(Awake、Start、Update...)

    一.了解帧的概念 游戏的本质就是一个死循环 每一次循环都会处理游戏逻辑 并 更新一次游戏画面 之所以能看到画面在动 是因为 切换画面速度达到一定速度时 人眼就会认为画面是动态且流畅的 一帧就是执行了一 ...

  8. 推荐系统-协同过滤在Spark中的实现

    作者:vivo 互联网服务器团队-Tang Shutao 现如今推荐无处不在,例如抖音.淘宝.京东App均能见到推荐系统的身影,其背后涉及许多的技术.本文以经典的协同过滤为切入点,重点介绍了被工业界广 ...

  9. 使用codeblocks创建新项目

    很多同学在学习C或C++版的数据结构的时候,自己写项目是一个不错的锻炼方法,而用codeblocks写项目的时候我们就会遇到很多问题了,比如说: 1.如何建立新项目. 2.如何建立头文件和主函数文件. ...

  10. Unity3D学习笔记10——纹理数组

    目录 1. 概述 2. 详论 2.1. 实现 2.2. 注意 3. 参考 1. 概述 个人认为,纹理数组是一个非常有用的图形特性.纹理本质上是一个二维的图形数据:通过纹理数组,给图形数据再加上了一个维 ...