字典

字典是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. 如何优化APK的大小

    项目使用AS打出的包明显比Eclipse打出的包要大一些,还是蛮费解.于是百度了一翻, 原来Eclipse使用的proguard能够遍历所有的java代码,把无用的代码去掉才生成dex文件,同 时对r ...

  2. Linux 合并多个txt文件到一个文件

    Linux 或 类Unix 下实现合并多个文件内容到一个文件中 代码如下 cat b1.txt b2.txt b3.txt > b_all.txt 或者 cat *.txt > merge ...

  3. 数据源引用 java:/comp/env

      编辑 删除 数据源引用 java:/comp/env 2012-01-28 15:59   ENC的概念: The application component environment is ref ...

  4. javascript动态添加、修改、删除对象的属性与方法

    在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译.JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为, ...

  5. Spotlight安装

    刚才技术群的一个朋友在安装Spotligh出现了一些问题,所以本人临时写个简单的教程 1.下载安装包(安装包地址:https://pan.baidu.com/s/1c2tmqyc),解压,然后傻瓜式安 ...

  6. 关于maven source1.5报错

    是因为maven 默认是1.5编译的 <build>//加上这个配置,把编译给改掉试试 <pluginManagement> <plugins> <plugi ...

  7. ML-学习提纲2

    https://machinelearningmastery.com/a-tour-of-machine-learning-algorithms/ http://blog.csdn.net/u0110 ...

  8. Qt学习笔记12:基本会话框4——总结

    文件对话框静态函数 QString QFileDialog::getOpenFileName{ QWidget *parent = 0; //标准文件对话框的父窗口 const QString &am ...

  9. flask_SQLAlchemy 中常用的过滤和执行器

    常用的SQLAlchemy查询过滤器 过滤器 说明 filter() 把过滤器添加到原查询上,返回一个新查询 filter_by() 把等值过滤器添加到原查询上,返回一个新查询 limit 使用指定的 ...

  10. Visual Studio中Radio Button组绑定变量方法(DDX_Radio方法)

    需求描述:Visual Studio 创建的界面程序中又许多 Radio Button,希望这些所有的Radio Button统一绑定到一个变量上,这个变量一旦改变,Radio Button的选中状态 ...