python字典:
  一个映射对象将可散列的值映射到任意对象。映射类型是可变的对象。当前只有一种标准的映射类型,即字典。用作键值的数字类型遵循正常的数值比较规则:如果两个数是相等的(例如1和1.0),那么它们可以交替使用来索引同一个字典条目。(但是注意,由于计算机将浮点数存储为近似值,所以将他们用作字典的键值是不明智的)
  字典的键值几乎可以是任意值。包含列表字典和其他可变类型(比较是通过值而不是对象本身的类型)不能作为键值。
字典可以用一个被大括号包围的以逗号分隔的键值对(key:value)列表来创建,例
如:{′jack′:4098,′sjoerd′:4127}or{4098:′jack′,4127:′sjoerd′}\{'jack': 4098, 'sjoerd': 4127\} \quad or \quad \{4098: 'jack', 4127: 'sjoerd'\} ,或者用字典构造器来构造。

字典构造器如下:

    class dict(**kwarg)class dict(mapping, **kwarg)class dict(iterable, **kwarg)

返回一个从可选的位置参数和可能为空的关键字集合中初始而来的新字典。

  如果没有给定位置参数,那么创建的是空的字典。如果给了位置参数和一个映射对象,那么创建的字典和映射对象拥有相同的键值对。否则,位置参数必须是一个可迭代的对象。可迭代对象中的每一个条目自身也得是可迭代的,并且包含两个对象。可迭代条目中的第一个对象作为字典的键值,第二个对象作为相应的值。如果一个键值出现了多次,那么最后一个键值对应的值就是该键值在字典中对应的值。
  如果给出了键值参数,那么键值参数和其对应的值都被添加到从位置参数创建出来的字典中。如果加入的键值已经在字典中存在,那么新加入的键值对应的值将取代原字典中该键值对应的值。
  为了更好的说明,以下几个例子都返回相同的字典{"one":1,"two":2,"three":3}\{"one":1,"two":2,"three":3\} :

    >>> a = dict(one=1, two=2, three=3)>>> b = {'one': 1, 'two': 2, 'three': 3}>>> c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))>>> d = dict([('two', 2), ('one', 1), ('three', 3)])>>> e = dict({'three': 3, 'one': 1, 'two': 2})>>> a == b == c == d == eTrue

  以下方法是字典中支持的方法:

    len(d)返回字典中的条目数d[key]返回该键值key对应的条目,如果没有对应条目,则触发KeyError错误。如果一个字典的子类定义了__missing__()方法,并且该key不存在,那么d[key]操作通过键值key来调用该方法(__missing__()方法)。d[key]操作就会返回或者触发__missing__(key)中定义的任何值,如果定义的是返回值,则返回该值,如果定义的是错误,则触发该错误。没有其他操作或方法会调用__missing__(),也就是仅仅d[key]中key不存在时才会调用该方法。如果__missing__()没有定义,那么会触发KeyError错误;__missing__()必须定义成方法,不能是一个变量。例如如下代码所示:>>> class Counter(dict):...     def __missing__(self, key):...         return 0>>> c = Counter()>>> c['red']0>>> c['red'] += 1>>> c['red']1d[key] = value设置d[key]的值为value,如果该key不存在,则为新增del d[key]从字典d中移除key对应的键值对条目,如果该key不存在,则会触发KeyError错误。key in d如果字典d中有该key,则返回true,否则返回falsekey not in d:和key in d意思相反iter(d)返回包含字典d中所有键值的迭代器,是iter(d.keys())的缩写clear()清空字典中的所有条目copy() 返回该字典的浅拷贝classmethod fromkeys(seq[,value])用seq中的键值和设置的相应的value来创建一个新的字典fromkeys()是一个类的方法,返回一个新的字典,值为Noneget(key[,default])如果字典中存在该key,返回字典中key对应的值;如不存在,则返回方法中给定的default值。如果方法中没有给定default值,则默认为None,总之永远不会触发KeyError错误。items()返回字典的新视图(即返回(key,value)列表)keys()返回字典中键值的新视图(即键值列表)pop(key[,default])如果字典中有该key,则移除该key对应的条目,并返回该key对应的值;如果不存在该key,则返回default值。如果没有给定default值并且字典中不存在该key值,那么会触发一个KeyError错误。popitem()从字典中随机移除一个条目,并将该条目(key,value)返回。popitem()对字典的破坏性迭代特别有用,所以经常在集合中使用。如果字典中已经没有条目,那么该方法会触发一个KeyError错误。setdefault(key[,default])如果该key已经在字典中,那么返回key对应的值;如果不在字典中,则将该key插入到字典中,该key对应的值为该方法设定的default值,并返回default值,如果没有设定default值,则对应None值。update([other])用other中的键值对来更新字典,重写已经存在的key值,返回None。

Python中字典(dict)详解相关推荐

  1. python哪个代码是正确的字典_Python - 字典(dict) 详解 及 代码

    字典(dict) 详解 及 代码 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17291329 字典(dict)是表示映射的数据 ...

  2. Python中self用法详解

    Python中self用法详解 https://blog.csdn.net/CLHugh/article/details/75000104 首页 博客 学院 下载 图文课 论坛 APP 问答 商城 V ...

  3. python中的字符串详解(附实现文字跑马灯效果)

    python中的字符串详解 1.什么是字符串 ​ 相信大家对字符串应该是再熟悉不过了吧,因为日常生活中的一句话,或是路边的一则广告,其实它都相当于一个字符串,而顾名思义,字符串也就是一串串的由零个或多 ...

  4. python的抽象类详解_第7.19节 Python中的抽象类详解:abstractmethod、abc与真实子类...

    第7.19节 Python中的抽象类详解:abstractmethod.abc与真实子类 一. 引言 前面相关的章节已经介绍过,Python中定义某种类型是以实现了该类型对应的协议为标准的,而不是以继 ...

  5. 【 Python 中 int 用法详解】(转载)

    Python 中 int 用法详解 欢迎转载,转载请注明出处! 文章目录 Python 中 int 用法详解 0. 参考资料 1. int 的无参数调用 2. int 接收数字作为参数 3. int ...

  6. Python 中 int 用法详解

    Python 中 int 用法详解 欢迎转载,转载请注明出处! 文章目录 Python 中 int 用法详解 0. 参考资料 1. int 的无参数调用 2. int 接收数字作为参数 3. int ...

  7. python中的GIL详解

    python中的GIL详解 参考Python-- GIL 锁简述 GIL是什么 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念.就 ...

  8. Python 中 with 用法详解

    浅谈 Python 的 with 语句:https://developer.ibm.com/zh/articles/os-cn-pythonwith/ python3,浅谈with的神奇魔法:http ...

  9. Python 字典dict详解(超详细)

    文章目录 Python内置函数/方法详解-字典dict 1.创建字典 1.1 字典键的特性 2.访问字典值 2.1 直接访问 2.2 for循环遍历 2.3 检查键是否存在 2.4 嵌套字典 3.内置 ...

最新文章

  1. .ne中的控制器循环出来的数据如何显示在视图上_Web程序设计-ASP.NET MVC4数据库操作实例...
  2. caffeine_使用Caffeine和Spring Boot的多个缓存配置
  3. ie6 div height bug css注意点(转)
  4. Spring集成–强大的拆分器聚合器
  5. kotlin获取属性_Kotlin程序获取系统名称
  6. ORA-07445 ERROR on auto execute of job 8913
  7. Hutool 工具类
  8. python dbf 修改_在Python中将数据写入dbf时出错
  9. 为什么我的程序在完全循环8192个元素时会变慢?
  10. ajax清除session,跳出iframe框架页面后跳转页面
  11. 数据结构之顺序表(C语言版)
  12. 机器视觉(9)搞懂机器视觉基本内容,这份PPT就够了!
  13. python中文乱码如何处理、如何处理跨域_解决Python发送Http请求时,中文乱码的问题...
  14. ajax传json后台接收,Ajax传Jsond Mvc后台接收实例
  15. 拼多多出现重大BUG,几小时内损失超千万,但处理方式让用户怒了
  16. java获取iso周_java实现iso的周数计算
  17. 【科普】Windows客户端加域管理(AD)
  18. Gazebo仿真进阶教程之传感器高斯噪声(二)
  19. 显卡+cuda+cudnn+tensorflow安装教程
  20. 2017第一届河北省大学生程序设计竞赛题解

热门文章

  1. PHP 设计模式 笔记与总结(3)SPL 标准库
  2. 在 SELECT 查询中使用表表达式
  3. 部署System Center App Controller 2012 Service Pack 1 (6)
  4. VS Code常用快捷键汇总
  5. EditorMD + handsome 编辑器插件整合
  6. AlgorithmMan,一套免费的算法演示神器(开源动画演示版)
  7. C#LeetCode刷题之#617-合并二叉树​​​​​​​​​​​​​​(Merge Two Binary Trees)
  8. C#LeetCode刷题之#409-最长回文串(Longest Palindrome)
  9. mysql的sql执行过程和explain语句
  10. 隐写术写在简历上面_隐写术用纯英语解释