字典是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. pytorch 基础内容

    一些基础的操作: import torch as th a=th.rand(3,4) #随机数,维度为3,4的tensor b=th.rand(4)print(a)print(b) a+b tenso ...

  2. javaScript去重的11种方法

    前言 去重是开发和面试中经常遇到的问题,下面是总结的 11 种去重方法 方法 示例数组 var arr = [1, 2, 4, 5, 5, 2, 1, 1, 4, 6] set + 解构赋值 这种方法 ...

  3. 快来体验快速通道,netty中epoll传输协议详解

    目录 简介 epoll的详细使用 EpollEventLoopGroup EpollEventLoop EpollServerSocketChannel EpollSocketChannel 总结 简 ...

  4. 001 Security概述

    1.Spring Security概述 Spring Security是用于解决认证与授权的框架 SpringSecurity默认要求所有的请求都是必须先登录才允许的访问 BCrypt加密算法 BCr ...

  5. 如何在Excel批量查询电话号码归属地?

    手机号码归属地的重要性大家应该都清楚,如果取消或者更改手机号码归属地,那么一会增加用户的被诈骗风险;二是对套餐资费会产生影响,加剧企业间的竞争,加剧数字鸿沟;三是企业运营管理需要投入大量人力物力,是个 ...

  6. Excel用户如何打破内卷?只需要一个新软件,就能突破excel天花板

    还在死磕Excel吗?到底值不值得? 你看看,现在有多少excel培训班和培训课?网上各种EXCEL使用技巧教程也是满天飞.很多人为了提升Excel技能,不遗余力学习各种函数用法.VBA用法等等,最近 ...

  7. Hive sql 经典题目和 复杂hsq

    案例一 练习:一:将下列数据加载hive表. 员工信息表emp:字段:员工id,员工名字,工作岗位,部门经理,受雇日期,薪水,奖金,部门编号英文名:EMPNO,ENAME,JOB,MGR,HIREDA ...

  8. salt stack学习笔记

    saltstack运行模式: local master/minion salt ssh saltstack三大功能 远程执行命令 配置管理(状态管理) 云管理 安装: master  salt-mas ...

  9. 当我们进行性能优化,我们在优化什么(LightHouse优化实操)

    好的互联网产品不仅仅在功能上要高人一筹,在性能层面也需要出类拔萃,否则金玉其外败絮其中,页面是美轮美奂了,结果首屏半天加载不出来,难免让用户乘兴而来,败兴而归. 幸运的是,前端的性能优化有诸多有迹可循 ...

  10. 运行 vue 项目时报错

    INFO Starting development server... ERROR Error: C - D:\T32890\Desktop\my-project\node_modules\@vue\ ...