阅读文本需要3分钟,不建议跳读

节目清单

字典是python中最重要的数据类型,字典由“键-值”对组成的集合,字典中的“值”通过“键”来引用。这里将介绍字典的定义、访问、排序等功能。

字典的创建

字典的键值对之间由“逗号”隔开,并且被包含在一对花括号中,与Java中的类作用相似。字典的创建非常简单:

创建空字典,只需一对花括号就可以了

字典的key,可以是字符型,也可以是数字,例如

字典的访问

字典的访问与元组、列表的有所不同,元组和列表是通过数字索引来获取对应的值,而字典是通过key值获取相对应的value值。例如:

字典的添加、删除和修改非常简单,添加或修改只需要编写一条赋值语句,例如:

如果索引x不在字典dict的key列表中,字典dict将自动添加一条新的映射;如果索引存在字典dict的key列表中,字典dict将直接修改索引x对应的value值

字典的移除

字典与列表不同,字典没有remove()操作。字典元素的删除可以调用实现,属于内建函数,直接调用即可。列表可以调用弹出列表中一个函数,字典也有pop(),该方法的声明与列表的pop()有些不同。

必须指点参数才能删除对应的值。如果需要清除字典的所有内容,可以掉用字典的。

字典的遍历

字典除了可以采用之外,还可以采用实现字典的遍历操作,items()返回一个有若干元组组成的列表。例如:

输出结果为:

可见,把字典中每一对key和value组成一个元组,并把这些元组存放在列表中返回。

1. for遍历

2. items()遍历

常用方法

例子:

输出结果:

字典的排序、复制

在列表的排序可以使用实现,字典的排序同样可以使用该函数

输出结果变为列表:

实现了字典的浅拷贝操作,当然有浅拷贝就有深拷贝。

举个栗子来说明一下,深浅拷贝的区别:

例如,字典B浅拷贝字典A的数据,如果字典B得数据发生添加、删除或者修改操作,字典A的数据也将发生变化;相反,如果字典B深拷贝字典A的数据,字典B的数据即使发生变化,也不会影响到字典A

深浅拷贝可以使用到python中的任何对象,不只是限于字典。在python中可以使用copy()模块来实现对象的深拷贝和浅拷贝,用于深拷贝,用于实现浅拷贝操作。

总结

至此,「python基础—字典」已经分享完了,整个python中常见的数据结构类型也就完结了,希望大家都已经掌握了。希望大家看过之后,都能自己动手实践。毕竟只有自己动手才能发现自己的问题所在。

原文链接:http://t.cn/R18ZXMR

欢迎加入Python 技术交流群:238757010

python基础—字典的更多相关文章

  1. python基础--字典

    Python基础--字典 字典的常用函数: dict.clear( )--->无任何返回值 说明: 清除字典内的所有的元素 语法: In [5]: dict.clear? Type: metho ...

  2. python基础——字典(dict)

    字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 . dict1 = {} ...

  3. Python基础:字典(dict)与集合(set)

    查找场景下与列表的性能对比 字典与集合之所以高效的原因是:内部结构都是一张哈希表. 平均情况下插入.查找和删除的时间复杂度为 O(1). 假设有数量100,000的产品列表: import time ...

  4. python基础——字典

    字典内置函数&方法 Python字典包含了以下内置函数: 序号 函数及描述 1 cmp(dict1, dict2)比较两个字典元素. 2 len(dict)计算字典元素个数,即键的总数. 3 ...

  5. python 基础 字典

    字典操作 字典一种key - value 的数据类型 特性: 无顺序 去重 查询速度快,比列表快多了 比list占用内存多 语法: info = { 'abc001': "Ben" ...

  6. Python基础--字典:当索引不好用时

    当列表或是元组的索引不能达到我们的目的时,我们想到了还有一种序列,即字典. 创建 字典 由多个键以及相应的值构成的键-值对组成. 键唯一.值能够不唯一 phonebook = {'xidada':'1 ...

  7. Python基础——字典和有序字典

    字典 说明: 在 Python 中, 字典 是一系列 键 — 值对 .每个键都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将任何 Pyt ...

  8. python基础——字典dict

    1.概念: (1)字典dict,是一系列的键—值对.每个键key都和一个值value相映射.(字典是python中唯一的映射类型.) (2)每一项item,是一个键值对key—value对. (3)键 ...

  9. Python基础——字典(dict)

    由键-值对构建的集合. 创建 dic1={} type(dic1) dic2=dict() type(dic2) 初始化 dic2={'hello':123,'world':456,'python': ...

随机推荐

  1. Linux为grub菜单加密码

    为grub菜单加密码 加入密码后,再次进入单用户或者给下次管理grub需要输入密码 加密操作 /sbin/grub-md5-crypt # 之后输入2次密码会生成加密后字符串 编辑grub加载文件 v ...

  2. JDBC 连接mysql获取中文时的乱码问题

    前段时间学习JDBC,要连接mysql获取数据.按照老师的样例数据,要存一些名字之类的信息,用的都是英文名,我当时就不太想用英文,就把我室友的名字存了进去,嘿嘿,结果,出问题了. 连接数据库语句: s ...

  3. strip() 只去头尾的,不能去中间

    # b = st.strip("|") # strip() 只去头尾的,不能去中间

  4. screen 命令基本操作教程

    sreen 命令提供的基本功能与 tmux 较为相似( 关于 tmux 基本操作可参见笔者的博文 终端复用工具 tmux 基本操作教程 ).screen 命令以会话( session )为基础为用户提 ...

  5. docker学习笔记:简单构建Dockerfile【Docker for Windows】

    参考与入门推荐:https://www.cnblogs.com/ECJTUACM-873284962/p/9789130.html#autoid-0-0-9 最近学习docker,写一个简单构建Doc ...

  6. [JSOI2008]火星人

    嘟嘟嘟 嗯. splay维护哈希. 如题,用splay维护哈希,查找的时候二分.所以复杂度是取决于询问复杂度:\(O(n \log^ 2{n})\). 这道题还有一个技巧,就是一个节点记录的是他的子树 ...

  7. unittest中setUp与setUpClass执行顺序

    最基础的概念 1.setUP(self)看下面的执行顺序 import unittest class TestGo(unittest.TestCase): def setUp(self): print ...

  8. Carthage 的使用

    第一步,当然是安装 Carthage,网上找吧 第二步,找到你要用的那个仓库,eg:https://github.com/jiutianhuanpei/SHBPlayer 第三步,cd 到工程根目录下 ...

  9. docker - kubernetes 网络(转)+ 架构图

    1.host网络 连接到 host 网络的容器共享 Docker host 的网络栈,容器的网络配置与 host 完全一样.可以通过--network=host指定使用 host 网络.docker ...

  10. 【jq】JQuery对select的操作

    下拉框 <select id="selectID" name="selectName"> <option vlaue="1" ...