python3字典学习

  • 字典学习
    • 1、访问字典里的值
    • 2、修改字典
    • 3、删除字典元素
      • 字典键的特性
    • 4、字典内置函数&方法

字典学习

戴良坤python3.7

  • 字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:

d = {key1 : value1, key2 : value2 }
  • 键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

一个简单的字典实例:

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
  • 也可如此创建字典:
dict1 = { 'abc': 456 }
dict2 = { 'abc': 123, 98.6: 37 }

1、访问字典里的值

  • 把相应的键放入到方括号中,如下实例:
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}print ("dict['Name']: ", dict['Name'])
print ("dict['Age']: ", dict['Age'])
dict['Name']:  Runoob
dict['Age']:  7
  • 如果用字典里没有的键访问数据,会输出错误如下:
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}print ("dict['Alice']: ", dict['Alice'])
'''
KeyError                                  Traceback (most recent call last)
<ipython-input-2-db832c6fa0ec> in <module>3 dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}4
----> 5 print ("dict['Alice']: ", dict['Alice'])KeyError: 'Alice'
'''
---------------------------------------------------------------------------KeyError                                  Traceback (most recent call last)<ipython-input-18-41d532526e89> in <module>1 dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}2
----> 3 print ("dict['Alice']: ", dict['Alice'])4 '''5 KeyError                                  Traceback (most recent call last)KeyError: 'Alice'

2、修改字典

  • 向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}dict['Age'] = 8               # 更新 Age
dict['School'] = "菜鸟教程"  # 添加信息print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])

3、删除字典元素

  • 能删单一的元素也能清空字典,清空只需一项操作。

显示删除一个字典用del命令,如下实例:

dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}del dict['Name'] # 删除键 'Name'
dict.clear()     # 清空字典
del dict         # 删除字典print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])
'''
TypeError                                 Traceback (most recent call last)
<ipython-input-9-acbbe1348922> in <module>5 del dict         # 删除字典6
----> 7 print ("dict['Age']: ", dict['Age'])8 print ("dict['School']: ", dict['School'])TypeError: 'type' object is not subscriptable #因为用执行 del 操作后字典不再存在'''

字典键的特性

  • 字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。

两个重要的点需要记住:

1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:

dict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'}print ("dict['Name']: ", dict['Name'])

2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行,如下实例:

dict = {['Name']: 'Runoob', 'Age': 7}print ("dict['Name']: ", dict['Name'])'''
TypeError                                 Traceback (most recent call last)
<ipython-input-15-c4866a957fa9> in <module>
----> 1 dict = {['Name']: 'Runoob', 'Age': 7}2 3 print ("dict['Name']: ", dict['Name'])TypeError: unhashable type: 'list''''

4、字典内置函数&方法

  • Python字典包含了以下内置函数:
序号 函数及描述 示例
1 len(dict)
计算字典元素个数,即键的总数。
dict = {‘Name’: ‘Runoob’, ‘Age’: 7, ‘Class’: ‘First’}
len(dict)
3
2 str(dict)
输出字典,以可打印的字符串表示。
dict = {‘Name’: ‘Runoob’, ‘Age’: 7, ‘Class’: ‘First’}
str(dict)
"{‘Name’: ‘Runoob’, ‘Class’: ‘First’, ‘Age’: 7}"
3 type(variable)
返回输入的变量类型,如果变量是
字典就返回字典类型。
dict = {‘Name’: ‘Runoob’, ‘Age’: 7, ‘Class’: ‘First’}
type(dict)
<class ‘dict’>
  • Python字典包含了以下内置方法:
序号 函数及描述
1 radiansdict.clear()
删除字典内所有元素
2 radiansdict.copy()
返回一个字典的浅复制
3 radiansdict.fromkeys()
创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
4 radiansdict.get(key, default=None)
返回指定键的值,如果值不在字典中返回default值
5 key in dict
如果键在字典dict里返回true,否则返回false
6 radiansdict.items()
以列表返回可遍历的(键, 值) 元组数组
7 radiansdict.keys()
返回一个迭代器,可以使用 list() 来转换为列表
8 radiansdict.setdefault(key, default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
9 radiansdict.update(dict2)
把字典dict2的键/值对更新到dict里
10 radiansdict.values()
返回一个迭代器,可以使用 list() 来转换为列表
11 pop(key[,default])
删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值
12 popitem()
随机返回并删除字典中的最后一对键和值。

本博客代码:https://github.com/dailiangkun/learn-python3.7/tree/master/learn-dict

python3字典学习相关推荐

  1. Python3 基础学习笔记 C05【字典】

    CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...

  2. 以下用于数据存储领域的python第三方库是-Python3爬虫学习之MySQL数据库存储爬取的信息详解...

    本文实例讲述了Python3爬虫学习之MySQL数据库存储爬取的信息.分享给大家供大家参考,具体如下: 数据库存储爬取的信息(MySQL) 爬取到的数据为了更好地进行分析利用,而之前将爬取得数据存放在 ...

  3. Python3 爬虫学习笔记 C18【爬虫框架 pyspider — 深入理解】

    Python3 爬虫学习笔记第十八章 -- [爬虫框架 pyspider - 深入理解] 文章目录 [18.1]启动参数 [18.2]运行单个组件 [18.2.1]运行 Scheduler [18.2 ...

  4. Python3 爬虫学习笔记 C17【爬虫框架 pyspider — 基本使用】

    Python3 爬虫学习笔记第十七章 -- [爬虫框架 pyspider - 基本使用] 文章目录 [17.1]初识 pyspider [17.2]使用 pyspider [17.2.1]主界面 [1 ...

  5. Python3 爬虫学习笔记 C16【数据储存系列 — Redis】

    Python3 爬虫学习笔记第十六章 -- [数据储存系列 - Redis] 文章目录 [16.1]关于 Redis [16.2]使用 Redis [16.3]Key(键)操作 [16.4]Strin ...

  6. Python3 爬虫学习笔记 C15【代理的基本使用】

    Python3 爬虫学习笔记第十五章 -- [代理的基本使用] 文章目录 [15.1]代理初识 [15.2]urllib 库使用代理 [15.3]requests 库使用代理 [15.4]Seleni ...

  7. Python3 爬虫学习笔记 C11【数据储存系列 — MongoDB】

    Python3 爬虫学习笔记第十一章 -- [数据储存系列 - MongoDB] 文章目录 [11.1]关于 MongoDB [11.2]MongoDB 基本操作语句 [11.3]连接 MongoDB ...

  8. Python3 爬虫学习笔记 C10【数据储存系列 — MySQL】

    Python3 爬虫学习笔记第十章 -- [数据储存系列 - MySQL] 文章目录 [10.1]MySQL 基本操作语句 数据库操作 表操作 表的结构 表的数据 [10.2]Python 连接 My ...

  9. Python3 爬虫学习笔记 C09【数据储存系列 — 文件储存】

    Python3 爬虫学习笔记第九章 -- [数据储存系列 - 文件储存] 文章目录 [9.1]TXT 文本存储 [9.1.1]基本示例 [9.1.2]打开方式 [9.2]JSON 文件存储 [9.2. ...

最新文章

  1. 学习Mongodb(一)
  2. union 和 union all 有什么不同?
  3. java实现递归层次遍历_Java实现二叉树的前序、中序、后序、层序遍历(递归方法)...
  4. 线程的互斥与同步机制
  5. Jabber 协议 概述
  6. Merry Christmas!看甜点海报如何庆祝圣诞
  7. docker create_云计算-Docker个人学习笔记
  8. go web框架_干货分享:六个知名的Go语言web框架
  9. access mysql odbc驱动程序_access odbc驱动程序
  10. 小米摄像头共享显示服务器错误6,小米摄像头
  11. 小米计算机视觉算法工程师面试题
  12. linux中打开caj文件,Ubuntu20.04使用CAJViewer for Linux(可双击打开.caj文件)
  13. 计算机视觉新手入门学习
  14. 埃森哲2021财年第三季度全球营收达133亿美元;富士胶片创新解决方案新成员亮相CHINA PRINT 2021 | 全球TMT...
  15. 国家基金申请书撰写的共性问题(转)
  16. qpsk的映射过程_(完整版)QPSK调制原理及matlab程序实现
  17. 新手入门 | photoshop基础教程
  18. 爬取淘宝商品名称及价格
  19. css3 —— 扑克牌旋转/盾牌飞入
  20. 系统性能评价---性能评估

热门文章

  1. 三本计算机工资,大家来晒晒三本民办独立学院的工资吧
  2. php定义一个计算器函数,php学习之简单计算器实现代码
  3. vue-print-nb打印功能
  4. 云学习的特征,主要有哪些?
  5. 大数据开发学习进阶路线图
  6. 设计色计算机色相对比知识,色相对比设计_设计教程-美术高考网www.mshao.com
  7. 浅谈asch系统的共识机制与容错性
  8. javascript basical knowledge
  9. 谁是“西游记”事件的幕后指使人?
  10. 计算机术语ram和rom,电脑RAM和ROM的区别是什么?RAM和ROM有哪些作用?