字典不同于列表、元组和字符串,列表、元组和字符串可以概括为序列类型,有以下特点:

  • 1.都可以通过索引得到每一个元素
  • 2.默认索引值总是从0开始
  • 3.可以通过切片的方法得到一个范围内的元素集合
  • 4.有很多共同的操作符
    而字典是一种映射类型,这是完全不同的。

1、创建字典

1.1 常用创建方式

dict1 = {'李宁':'云','耐克':'zoom','阿迪达斯':'boost','匹克':'态极'}

1.2 利用元组创建

dict2 = dict((('a',1),('b',2),('c',3),('d',4)))

1.3 另外一种创建方式

dict3 = dict(马斯克 = '让编程改变世界',爱因斯坦 = '广义狭义相对论')

2、修改字典

dict3['李宁'] = '一切皆有可能'
# 如果字典中没有该元素,通过上述这种方式会新添加该元素到字典中
dict3['奋斗'] = '社会上容纳不了太多有理想的人'

3、常用方法

3.1 fromkeys(seq,val)方法:创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值,val可选

# 若没有设置val,默认为None
dict1 = {}
dict1.fromkeys((1,2,3))
# 设置val为number,则创建的字典值为number
dict1.fromkeys((1,2,3),'number')

3.2 keys():获得字典所有的key值

dict2 = {}
dict2 = dict2.fromkeys(range(30),'赞')
for each in dict2.keys():print(each)

3.3 values():获得字典所有的values值

for each in dict2.values():print(each)

3.4 items()方法:将字典的每一项打印出来,以元组的形式

for each in dict2.items():print(each)

3.5 get(key,default)方法:返回指定键的值,如果值不在字典中返回default值,default可选

# dict2字典中只有30个元素,索引值0~29,没有30,因此返回一个None
print(dict2.get(30))
print(dict2.get(29))

3.6 in/not in :判断key是否在字典中¶

32 in dict2
29 in dict2

3.7 copy():这是浅拷贝,与直接相等不是一个东西

a = {1:'one',2:'two'}
# 浅拷贝
b = a.copy()
# 通过打印首地址来确认
print(id(a))
print(id(b))
# 可以发现不是相同的

# 深拷贝
c = a
print(id(c))
print(id(a))
# 可以发现这是一致的

3.8 pop(key,default):删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

dict2.pop(27)

3.9 popitem():返回并删除字典中的最后一对键和值。

dict2.popitem()

3.10 setdefault(key,default):和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

dict2.setdefault(26,'woaini')

3.11 update(dict2):把字典dict2的键/值对更新到dict里

dict2.update({99:'kk'})

一文看懂Python(三)-----字典篇相关推荐

  1. 一文看懂Python 爬虫 进阶(三)

    一文看懂Python 爬虫 进阶(三) 文章目录 一文看懂Python 爬虫 进阶(三) **猫眼电影(xpath)** **链家二手房案例(xpath)** **百度贴吧图片抓取** 这篇几乎都是代 ...

  2. angular 字符串转换成数字_一文看懂Python列表、元组和字符串操作

    好文推荐,转自CSDN,原作星辰StarDust,感觉写的比自己清晰-大江狗荐语. 序列 序列是具有索引和切片能力的集合. 列表.元组和字符串具有通过索引访问某个具体的值,或通过切片返回一段切片的能力 ...

  3. 一文看懂Python collections模块的高效数据类型

    原作: George Seif, 发表于medium.com, 大江狗原创翻译, 并对原文稍作修改. Python的最大优势之一是其广泛的模块和软件包.这将Python的功能扩展到许多受欢迎的领域,包 ...

  4. SAP FICO 一文看懂财务三张表

    点击进入:一文看懂财务三张表 更多内容关注公众号:SAPtechnical

  5. 一文看懂Python多进程与多线程编程(工作学习面试必读)

    进程(process)和线程(thread)是非常抽象的概念, 也是程序员必需掌握的核心知识.多进程和多线程编程对于代码的并发执行,提升代码效率和缩短运行时间至关重要.小编我今天就来尝试下用一文总结下 ...

  6. 一文看懂Python(六)-----类与对象篇

    今天给大家介绍"对象".众所周知,Python是一门面向对象的编程语言,Python之所以如此强大,很大一部分原因也是因为Python中无处不对象,由此可知,学好Python的关键 ...

  7. 一文看懂Python(五)-----文件篇

    一.前言 文件操作在所有编程语言中都扮演着一个非常重要的角色,编程语言中的文件操作都大同小异,无非就是读取和写入,本文会详细介绍Python的相关文件操作,包括常用的方法.方法如何使用.一些小的案例以 ...

  8. 一文看懂Python(四)-----os.path模块篇

    一.前言 今天介绍一下Python中一个常用的模块–os.path模块.之后会很频繁地用到这个模块,故在分享一下! 二.常用方法解释 方法名 方法介绍 basename(path) 去掉目录路径,单独 ...

  9. 一文看懂Python(二)-----字符串篇

    本文着重介绍Python字符串的相关方法,有很多特别使用的方法,但也有比较奇特的方法,可能想都想不到,哈哈哈!比较难理解的方法我会把运行结果贴上去,简单的就不贴了,最后祝大家学的愉快! 1.创建一个字 ...

最新文章

  1. python 多级菜单_python多级菜单
  2. msyql主从同步实践
  3. C#设计模式系列:享元模式(Flyweight)
  4. 程序的加载和执行(五)——《x86汇编语言:从实模式到保护模式》读书笔记25
  5. 当singleton Bean依赖propotype Bean,可以使用在配置Bean添加look-method来解决
  6. chrome浏览器,调试详解,调试js、调试php、调试ajax
  7. ITPro Magazine2006年第6期发布
  8. spring boot的gradle整合日志
  9. MyBatis 插入失败后爆出 500 ,如何捕获异常?
  10. Win10下windows mobile设备中心连接不上的方法无法启动
  11. 【机器学习】层次聚类-Agglomerative clustering
  12. 求方程式ax2bxc0的根c语言,2019-03-09 C语言学习12-求ax^2+bx+c=0方程的根
  13. [转]用python来开发webgame服务端(3)
  14. 梦幻岛颠覆式变革NFT,探索实体与数字的双轨价值
  15. 借助Grub4DOS的grldr启动Windows PE(软启动)
  16. 保姆教程:mac ssh密钥连接Linux
  17. plt.legend 图例放在外面 子图会挤在一起 子图压缩 压扁
  18. 如何用matlab画旋转面,基于MATLAB在旋转面及其方程教学中应用的教学设计
  19. 使用OpenBTS基站测试物联网模块安全性
  20. 高性能零售IT系统的建设03-监控体系化的重要不亚于开发的投入

热门文章

  1. vue json 导出 excel
  2. 数据结构 - 从二叉搜索树说到AVL树(一)之二叉搜索树的操作与详解(Java)
  3. 对于机器学习中,数据增强
  4. ARM7/9 的中断与 RTOS 系统(转)
  5. Win10:tensorflow学习笔记(4)
  6. C++类中成员变量的初始化有两种方式
  7. ubuntu 搜索文件方法(find命令)
  8. vtkImageData基本操作
  9. 目标检测,目标识别的SAR数据集构建和标注
  10. 【云炬大学生创业基础笔记】第1章第1节 创新和创业有什么样的关系?