阅读文本需要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. 排序算法(2) 堆排序 C++实现

    堆 1 数组对象 2 可以视为一棵完全二叉树 3 一个堆可以被看作一棵二叉树和一个数组,如下图所示: 4 下标计算(通常使用内联函数或者宏来定义下标操作): 已知某个结点的下标为i 其父节点下标:i/ ...

  2. nginx安装脚本

    #!/bin/bash#auto config Nginx#by zhangjia 2019#define Path variables#date:2019/1/16 check_ok() { ]] ...

  3. C++项目规范

    https://segmentfault.com/a/1190000007659754

  4. buff/cache 内容释放

    oscache远程服务器特别卡,top命令查看获得 buff/cache 占据内存特别大,使用以下命令清理缓存: swap清理: swapoff -a && swapon -a 注意: ...

  5. robotFramework--ride 问题:Data source does not exist.

    第一次安装robotFramework,运行时提示Data source does not exist.最后发现是在Arguments这一栏误输入了. 导致的,去掉.后就可以正常运行了.

  6. right here waiting的歌词

    right here waiting的歌词 2006-12-30 17:36 匿名 | 分类:音乐 | 该问题已经合并到>> right here waiting的歌词有吗?   扫描二维 ...

  7. Uva1001 Say Cheese Floyd

    题意:一个无限大的奶酪里有n个球形的洞,在洞内可以瞬移,不然每一个单位要用10sec,现在给定起始点和结束点,问最短需要耗时多久? 思路:把球形的洞当做是节点,两点之间的距离是两者球心的距离减去两者的 ...

  8. HashMap,LinkedHashMap和Hashtable类的深入剖析与理解

    上一篇文章写了一些关于HashMap以及HashMap的线程安全问题,这篇文章再来说说Map系列中HashMap,LinkedHashMap和Hashtable三者之间的差异以及该注意的地方. Has ...

  9. [WHY]Hello, Worktile~

    本来是水水的去听一听云计算大会,感受一下氛围的, 万万没想到,竟然意外的參观了Worktile,这也成了北京之旅最值得纪念的记忆. 先是路上看到QQ有个好友请求,备注是Worktile市场的小泽. 从 ...

  10. 用php代码统计数据库中符合条件的行数

    $sql1 = "select count(*) from t_user where age<17"; $data1 = mysql_query($sql1); $rows1 ...