1.字典概念引入

想一想:

如果有列表

nameList = ['xiaoZhang', 'xiaoWang', 'xiaoLi'];

需要对"xiaoWang"这个名字写错了,通过代码修改:

nameList[1] = 'xiaoxiaoWang'

如果列表的顺序发生了变化,如下

 nameList = ['xiaoWang', 'xiaoZhang',  'xiaoLi'];

此时就需要修改下标,才能完成名字的修改

 nameList[0] = 'xiaoxiaoWang'

有没有方法,既能存储多个数据,还能在访问元素的很方便就能够定位到需要的那个元素呢?

答:字典

另一个场景:

学生信息列表,每个学生信息包括学号、姓名、年龄等,如何从中找到某个学生的信息?

>>> studens = [[1001, "王宝强", 24], [1002, "马蓉", 23], [1005, "宋喆",24], ...]

2.软件开发中的字典

变量info为字典类型:

info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}

说明:

  • 字典和列表一样,也能够存储多个数据
  • 列表中找某个元素时,是根据下标进行的
  • 字典中找某个元素时,是根据’名字’(就是冒号:前面的那个值,例如上面代码中的’name’、‘id’、‘sex’)
  • 字典的每个元素由2部分组成,键:值。例如 ‘name’:‘班长’ ,'name’为键,'班长’为值

3.根据键访问值

info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}print(info['name'])
print(info['address'])

结果:

班长
地球亚洲中国北京

若访问不存在的键,则会报错:

>>> info['age']
Traceback (most recent call last):File "<stdin>", line 1, in <module>
KeyError: 'age'

在我们不确定字典中是否存在某个键而又想获取其值时,可以使用get方法,还可以设置默认值:

>>> age = info.get('age')
>>> age #'age'键不存在,所以age为None
>>> type(age)
<type 'NoneType'>
>>> age = info.get('age', 18) # 若info中不存在'age'这个键,就返回默认值18
>>> age
18

21 python - 字典相关推荐

  1. python介绍和用途-Python字典简介以及用法详解

    ? 1 2 3 #!/usr/bin/env python # -*- coding:utf-8 -*- """ 老规矩以下方法环境2.7.x,请3.x以上版本的朋友记得 ...

  2. 2020-12-03 python 字典 key 和value 互换

    python 字典 key 和value 互换 举个例子 province = {"皖": 0,"沪": 1,"津": 2,"渝& ...

  3. python 如果没有该key值置为空_在python字典中用“None”替换空值

    我有一个从arcgis shapefile生成的Python字典.字典的key=FID(point ID):value=nothing或"HH".字典是这样的:Cluster_di ...

  4. python中的字典推导式_17.python 字典推导式(经典代码)

    在昨天的文章中,我们介绍了关于** python列表推导式** 的使用,字典推导式使用方法其实也类似,也是通过循环和条件判断表达式配合使用,不同的是字典推导式返回值是一个字典,所以整个表达式需要写在{ ...

  5. python字典与json转换_python字典与json转换的方法总结

    在python中json分别由列表和字典组成,本文主要介绍python中字典与json相互转换的方法.使用json.dumps可以把字典转成json字符串.使用json.loads可以把json字符串 ...

  6. (三)PYTHON字典 元祖 列表尝试应用

    (三)PYTHON字典 元祖 列表尝试应用 1. 使用 join 方法将下划线添加到列表的每一个元素拼接成字符串,li = ['alex', 'eric', 'rain'] li = ['boom', ...

  7. [转载] python字典更新值_Python–字典元组值更新

    参考链接: Python字典| update方法 有时在处理元组数据时,我们在执行其版本时会遇到问题,原因是它是不可变的.讨论字典中元组值的版本.这在许多领域都有应用,因为字典通常是web开发和数据科 ...

  8. python字典中的值不允许重复_python字典中值不允许重复的原因

    python字典中值不允许重复的原因 发布时间:2020-10-29 10:03:21 来源:亿速云 阅读:104 作者:小新 这篇文章给大家分享的是有关python字典中值不允许重复的原因的内容.小 ...

  9. python字典取值_python 字典中取值的两种方法小结

    python 字典中取值的两种方法小结 如下所示: a={'name':'tony','sex':'male'} 获得name的值的方式有两种 print a['name'],type(a['name ...

最新文章

  1. delphi ---break,exit,continue等跳出操作的区别
  2. 2015年奇虎360服务器开发C++电话面试问题
  3. centos7 安装git_Gitlab安装及使用
  4. Spring AOP(通知、连接点、切点、切面)
  5. ggplot2中显示坐标轴_qplot()——ggplot2的快速绘图
  6. 【Elasticsearch】Elasticsearch 动态模板(Dynamic templates)
  7. javascript promise
  8. 很多大企业都在用的Pentaho 商业分析软件中存在多个严重缺陷
  9. 机房收费系统合作版(五)——初识托付
  10. HandlerInterceptor与MethodInterceptor
  11. Java并发编程之volatile关键字
  12. 拷贝构造函数和赋值构造函数的区别
  13. 在mininet中测试TCP、UDP带宽并作图
  14. 蚂蚁金服服务器系统,蚂蚁金服轻量级监控分析系统 SOFALookout 服务端开源
  15. MTK modemlog分析
  16. 第三十二章 三更雪压飞狐城(五之全)
  17. Conent7.0安装lanp全过程
  18. 考研复试——数据库(一)
  19. Android进阶——更节电的后台任务JobScheduler 机制使用详解
  20. supermap mysql_SuperMap iMobile for Android定位实现

热门文章

  1. 你不知道的CSS函数,Min、Max、Clamp()函数基础用法
  2. Word高效指南 - 快速合并多个文档
  3. 如何挑选适合自己的笔记本电脑
  4. 【沃顿商学院学习笔记】领导力——Business Impact:09 逻辑模型四 Logic Model4
  5. 百度网盘限速的2个解决小办法
  6. pycharm设置文件模板
  7. Win10显卡驱动在哪里?
  8. SQL 一条SQL语句 统计 各班总人数、男女各总人数 、该班级男女 比例
  9. [附源码]Node.js计算机毕业设计房屋出租管理系统Express
  10. 基于yolov5轻量级的学生上课姿势检测识别分析系统