字典

字典是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. iframe及其引出的页面跳转问题

    前提:在前一段的工作中碰到了一些页面跳转,子页面跳到父页面上的等等问题,当时页面总是跳不对,或者跳错,要不就是不需要重新打开窗口,却又重新打开一个了,特此搜寻网上各大博客论坛,加上项目经验整理一篇文章 ...

  2. 在Android上使用酷狗歌词API

    参考自http://blog.csdn.net/u010752082/article/details/50810190 代码先贴出来: public void searchLyric(){ final ...

  3. PHP Deprecated: Function split() is deprecated in /var/www/html/cacti/cmd.php on line 61

    [root@localhost cacti]# php cmd.php PHP Deprecated: Function split() is deprecated in /var/www/html/ ...

  4. java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()

    原因:hibernate-jpa-2.0-api-1.0.0.Final.jar.ejb3-persistence.jar中的javax.persistence与javaEE 5 Librares中的 ...

  5. sccm系统更新补丁后服务无法正常启动

    更新完补丁后这几个应用无法启动,最后发现计算机丢失msvcp120.dll 文件,查询相关资料发现安装vcredist 2013 从官网下载Visual C++ Redistributable Pac ...

  6. 在Windows 10 系统上启用Hyper V遇到的错误:0x800f0831

    Hyper-V是微软的一款虚拟化技术,是微软第一个采用类似Vmware和Citrix开源Xen一样的基于hypervisor的技术. 在Windows 10的powershell命令里,输入如下的命令 ...

  7. 11G RAC环境数据库启动和关闭

    一步启动Oracle (1) 启动整个集群 # ./crsctl start cluster -all -all选项启动整个集群. 不加-all选项只能启动本节点的服务. (2) 启动本节点集群 以下 ...

  8. MVVM没你想象的那么的好

    我写过很多有关于让View Controller 更易于理解的文章,其中一种比较常见的模式就是Model-View-ViewModel(MVVM). 我认为MVVM 是一种非常容易让人混淆的 anti ...

  9. tree iview treeData json数据 添加 selected 数据 要进行vue.set 进行响应式添加

    tree iview treeData json数据 添加 selected 数据 要进行vue.set 进行响应式添加

  10. 用户交互和if条件判断、嵌套

    #a=input("提示语“)#接受的数据类型是字符串str#提示用户输入姓名 # a=input("请输入姓名") print(a) '''输出结果:请输入姓名小明 姓 ...