字典

字典是Python唯一内建的数学映射类型,字典中的值没有特殊的顺序,键可以是数字,字符串,甚至是元组

字典的创建:

字典由键值对构成,字典中键是唯一的,而值不唯一。>>> a_map={"a":1,"b":2,"c":2}  >>> a_map["a"]

dict函数来创建字典:

>>> items=[('a','b'),(1,2)]  >>> a_map=dict(items) >>> a_map  {1: 2, 'a': 'b'}

>>> a_map=dict(a='b',c=12) >>> a_map  {'a': 'b', 'c': 12}

基本的字典操作:

(1)>>> len(mapa)返回字典中键值对的个数

(2)>>> mapa['a'] 返回关联到键k上的值

(3)>>> mapa['a']=2 将2关联到键a上(这一点与列表有很大的不同,在列表的索引号中这样不存在的不能直接赋值添加)

(4)>>> del(mapa['a']) 将键‘a’的键值对给删除了

(5)>>> 'b' in mapa 检查键‘b’ 是否在mapa中

字典的格式化字符串

>>> pho={'a':1,'b':2,'c':3}

>>> "diug is %(a)s" % pho

'diug is 1'

后面的那个s应该是说明那个是字符串的意思。

字典方法:

(1)clear()    >>> pho.clear()  >>> pho  {} 清空字典

(2)copy

浅复制(值没有被复制,替换时原始的字典不变,而修改时如移除值时,原始的字典也会跟着改变)和深度复制() from copy                import deepcopy

(3)fromkeys

使用给定的键创建新字典,默认值为‘none’

(4)get

更宽松的访问字典项的方法 >>> pho.get('a')

(5)has_keys

(6)items 和 iteritems 前者将所有的字典项以列表的形式返回,后者将返回迭代器对象

(7)keys和iterkeys 前者将字典中的键以列表形式返回,后者返回迭代器对象

(8)pop >>> pho.pop('a') 获得相应的给定键的值,并将键值对移除

(9)popitem 弹出随机的项

(10)setdefalt 类似于get 在字典中不含给定键的情况下设定相应的键值

(11)update d.update(s)   采用s来更新d,提供的字典项会被添加到新的字典中,其中相同的会被覆盖

(12)values 和 itervalues 以列表形式返回字典中的值

Python基础教程笔记——第4章:字典的更多相关文章

  1. Python基础教程笔记——第7章:更加抽象(类)

    下面进入Python的面向对象: 对象的魔力: 多态:---可以对不同类的对象使用同样的操作 封装:---对外部隐藏对象内部的工作方式 继承:---以普通的类为基础建立专门的类对象 (1)多态: is ...

  2. Python基础教程笔记——第6章:抽象(函数)

    (1)计算裴波那契数列: fbis=[0,1] num=int(input("please input the number")) for i in range(num-2): f ...

  3. Python基础教程笔记——第5章:条件,循环和其他语句

    5.1 print和import的更多信息 1. print()3.0之后print不再是语句,而是函数, >>> print('udg',12,13)   udg 12 13 &g ...

  4. Python基础教程笔记——第2章:列表和元组

    python shell 里重复上一次的命令:Alt+p 2.3 列表:Python的苦力 (1)list函数 (2)列表赋值,不蹦蹦为一个元素不存在的位置赋值 (3)删除元素,del name[1] ...

  5. Python基础教程笔记——第1章

    1.8 函数 pow(x,y) x^y abs(x)          取数的绝对值 round(x)   会把浮点数四舍五入为最接近的整数 floor(x)     向下取整的函数,但是需要先imp ...

  6. Python基础教程笔记——第3章:使用字符串

    字符串是不可修改的,标准序列操作(索引,分片,判断成员资格,求长度,取最大值 最小值)对字符串都是有效的. 格式化字符串,类似于C语言的输出是的感觉. >>> format=&quo ...

  7. python基础教程笔记—即时标记(详解)

    最近一直在学习python,语法部分差不多看完了,想写一写python基础教程后面的第一个项目.因为我在网上看到的别人的博客讲解都并不是特别详细,仅仅是贴一下代码,书上内容照搬一下,对于当时刚学习py ...

  8. python基础教程笔记—画幅好画(详解)

    今天写一下基础教程里面的第二个项目,主要使用python来做一个pdf的图,比较简单. 首先我们需要安装用到的模块pip install reportlab即可. 书上是用urlopen从往上下了一个 ...

  9. 《Python基础教程》第2章读书笔记(1)

    # -*- coding:utf-8 -*- #最基本的数据结构:序列,索引从0开始 #python包括6种内建的序列 #最常用的序列包括:列表,元祖 #列表 edward = ['Edward Gu ...

随机推荐

  1. [转]Android TCP长连接 心跳机制及实现

    背景知识 智能手机上的长连接心跳和在Internet上的长连接心跳有什么不同 Android系统的推送和iOS的推送有什么区别 几种推送的实现方式 协议 1XMPP简介 2 MQTT简介 3移动端消息 ...

  2. Flutter 1.0 正式版: Google 的跨平台 UI 工具包

    今天我们非常高兴的宣布,Flutter 的 1.0 版本正式发布!Flutter 是 Google 为您打造的 UI 工具包,帮助您通过一套代码同时在 iOS 和 Android 上构建媲美原生体验的 ...

  3. Failure to transfer org.apache.maven.plugins:maven-compiler-plugin:jar:2.5.1

    Mac上写了一段基于Maven的java代码. 上传Git后,在windows上pull下来,eclipse里面各种错误. ArtifactTransferException:Failure to t ...

  4. codevs 2905 足球晋级

    时间限制: 1 s  空间限制: 64000 KB  题目等级 : 黄金 Gold   题目描述 Description A市举行了一场足球比赛 一共有4n支队伍参加,分成n个小组(每小组4支队伍)进 ...

  5. javaee 第五周作业

    一.Ajax技术 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. ...

  6. iview table的render()函数基本的用法

    render:(h,params) => { return h(" 定义的元素 ",{ 元素的性质 }," 元素的内容"/[元素的内容]) }

  7. python基础一 day5 集合

    集合是无序的 增:add()添加进去是无序,不一定是最后面,update()像extend() 删: 没有改,有查,里面的元素是不可变类型 查用for in 交集: 并集: 反交集 叉集: 子集与超集 ...

  8. ubuntu下操作Hadoop、hdfs、hbase、zookeeper时产生的一些问题及解决办法

    2019/05/29 1.在终端输入jps时,没有显示Hdfs的DataNode 在文件夹中分别找到DataNode 和Namenode的version,将Datanode的version改为与nam ...

  9. InnoDB INFORMATION_SCHEMA Metrics Table

    InnoDB INFORMATION_SCHEMA Metrics Table INNODB_METRICS表将所有InnoDB性能和资源相关计数器合并到一个INFORMATION_SCHEMA表中. ...

  10. 学习PyQuery库

    学习PyQuery库 好了,又是学习的时光啦,今天学习pyquery 来进行网页解析 常规导入模块(PyQuery库中的pyquery类) from pyquery import PyQuery as ...