创建字典

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

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

1 d = {key1 : value1, key2 : value2 }

键必须是唯一的,但值则不必。

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

一个简单的字典实例:

1 dict = {'Alice': '1234', 'Beth': '5678', 'Cecil': '0000'}

也可如此创建字典:

1 dict1 = { 'abc': 456};2 dict2 = { 'abc': 123, 98.6: 37 };

访问字典里的值

把相应的键放入到方括号中,如下实例:

1 dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}2 print ("dict['Name']:", dict['Name'])3 print ("dict['Age']:", dict['Age'])

以上实例输出结果:

1 dict['Name']: Runoob2 dict['Age']: 7

如果用字典里没有的键访问数据,会输出错误如下:

1 print ("dict['Alice']:", dict['Alice'])

以上实例输出结果:

1 File "test.py", line 5, in

2 print ("dict['Alice']:", dict['Alice'])3 KeyError: 'Alice'

修改字典

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

1 dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}2 dict['Age'] = 8; #更新 Age

3 dict['School'] = "菜鸟教程" #添加信息

4 print ("dict['Age']:", dict['Age'])5 print ("dict['School']:", dict['School'])

以上实例输出结果:

1 dict['Age']: 8

2 dict['School']: 菜鸟教程

删除字典元素

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

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

1 dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}2 del dict['Name'] #删除键 'Name'

3 dict.clear() #清空字典

4 del dict #删除字典

5 print ("dict['Age']:", dict['Age'])6 print ("dict['School']:", dict['School'])

但这会引发一个异常,因为用执行 del 操作后字典不再存在:

1 Traceback (most recent call last):2 File "test.py", line 9, in

3 print ("dict['Age']:", dict['Age'])4 TypeError: 'type' object is not subscriptable

字典键的特性

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

两个重要的点需要记住:

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

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

以上实例输出结果:

1 dict['Name']: 小菜鸟

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

1 dict = {['Name']: 'Runoob', 'Age': 7}2 print ("dict['Name']:", dict['Name'])

以上实例输出结果:

1 Traceback (most recent call last):2 File "test.py", line 3, in

3 dict = {['Name']: 'Runoob', 'Age': 7}4 TypeError: unhashable type: 'list'

字典内置函数&方法

Python字典包含了以下内置函数:

Python字典包含了以下内置方法:

php中的字典数据类型,python中字典数据类型常用操作相关推荐

  1. python中readlines函数用法,python中read() readline()以及readlines()用法

    我们谈到"文本处理"时,我们通常是指处理的内容.Python 将文本文件的内容读入可以操作的字符串变量非常容易.文件对象提供了三个"读"方法: .read(). ...

  2. 【科学文献计量】将Endnote中的文献读入python中进行数据分析,并顺便将结果保存为Excel文件,并封装函数直接调用

    将Endnote中的文献读入python中进行数据分析,并顺便将结果保存为Excel文件 1 需求 2 功能完成 2.1 文献下载 2.2 文献导入到Endnote 2.3 文献导出 2.4 文件加载 ...

  3. 如何在VC中加减日期及 CTime COleDateTime的常用操作和比较

    如何在VC中加减日期及 CTime COleDateTime的常用操作和比较 [转贴 2008-10-31 15:51:28]     字号:大 中 小 如何在VC中加减日期  使用CTime类,如: ...

  4. python是什么语言、即变量不需要显示声明数据类型-python中可以声明变量类型吗...

    变量(variable)是Python语言中一个非常重要的概念.变量的主要作用就是为Python程序中的某个值起一个名字.类似于"张三"."李四"." ...

  5. python中的pymysql_(转)Python中操作mysql的pymysql模块详解

    原文:https://www.cnblogs.com/wt11/p/6141225.html https://shockerli.net/post/python3-pymysql/----Python ...

  6. c++中的引用和python中的引用_对比 C++ 和 Python,谈谈指针与引用

    作者 | 樱雨楼 引言 指针(Pointer)是 C.C++ 以及 Java.Go 等语言的一个非常核心且重要的概念,而引用(Reference)是在指针的基础上构建出的一个同样重要的概念. 指针对于 ...

  7. c++中的引用和python中的引用_【总结】C++、C#、Java、Javascript、Python中引用的区别...

    首先分两大阵营:C++中引用是一块阵营, C#.Java.Javascript.Python中引用是另一块阵营. 之所以这样分是因为同一阵营中引用使用方法基本一样. C++引用本质是个常量指针,而其他 ...

  8. python中面向对象_简述Python中的面向对象编程的概念

    面向对象编程--Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 面向过程的程序设计把计算机 ...

  9. python中面向对象的缺点_面向对象中的多态在 Python 中是否没有什么意义?

    谢邀! 话说,你为什么说Python中没有数据类型的概念.Python肯定是有数据类型的,在我所见的所有语言中,没有一门编程语言是没有数据类型的. 依据你的问题,我理解或许你的意思是,Python没有 ...

  10. python中+=是什么意思,python中+=是什么意思

    python中+=的意思:1.两个值相加,返回值给符号左侧的变量:2.用于字符串连接,变量值带引号,数据类型为字符串.pBG少儿编程网-https://www.pxcodes.com pBG少儿编程网 ...

最新文章

  1. 算法基础(09)— 字符串常用操作
  2. limma包分析差异表达基因
  3. 在Linux系统centos上安装RAR
  4. Lead saved query bug
  5. OpenCV学习(27) 直方图(4)
  6. c语言设计二级考试程序修改题,全国计算机二级考试C语言复习题与答案解析
  7. 天合光能环卫机器人_无人驾驶已在南京多个领域落地!无人环卫,离全面落地还有多久...
  8. 模型flops 的计算方法
  9. 智能录音笔完成全系列布局,科大讯飞还发了一款转写翻译智能耳机
  10. 希望 线段树 01背包
  11. 【爬虫】编码问题总结
  12. 管理感悟:怎样讲清楚自己的想法
  13. Atitit 理财之道 信用卡账单管理之道 attilax总结 1. 信用卡账单管理 信用卡账单信息的目的,解决一下问题 2 1.1. 账单记录明细可追溯,原则上保留五十年 可按照时间  银行  卡
  14. 领健医美管理软件、美如云医美、宏脉有什么差异性
  15. nginx实现rtmp,flv,mp4流媒体服务器
  16. mx记录什么意思?域名mx记录怎么设置?
  17. 第7章第25节:双图排版:两张图片横竖交错叠加排版 [PowerPoint精美幻灯片实战教程]
  18. EasyExcel导出Excel设置单元格文本格式(亲测有效)
  19. 安卓快手批量取关软件v2.0
  20. Webpack:Loader学习—— Pitching Loader

热门文章

  1. 反洗钱不力,银行遭遇央行15亿天价罚单
  2. 5款 Mac 常用PDF阅读和编辑软件推荐
  3. 计算机自带pdf吗,PDF是什么?怎么电脑上编辑PDF文件
  4. 2020mysql下载教程
  5. JSP设置IE版本兼容
  6. 进程调度算法Java
  7. 95社区(对接第三方社区)
  8. 安装labelImg(Ubuntu / Linux)
  9. 固态硬盘怎么看出厂日期_如何查看SSD可以使用多长时间?固态硬盘寿命测试方法(全文)...
  10. 尚学堂__百战程序员__1573题------第一章 初始java