1.创建字典:字典由键值对组成,每个键值对就是字典的一个元素,键值对之间用分号(:)隔开,元素之间用逗号(,)隔开。字典中的键必须是唯一 且不可变得(不可以是列表或者字典)。字典中的元素是无序的。

    dic = {'name': 'Gumby', 'age': '18'}

    2.字典的基本操作

    1)使用len(dict)函数返回字典中包含的键值对的个数

1 >>> dic = {'name': 'Gumby', 'age': '18'}
2 >>> len(dic)
3 2

    2)dict[key],key的值为字典中的键的名称,返回该键所对应的值

1 >>> dic = {'name': 'Gumby', 'age': '18'}
2 >>> dic['name']
3 'Gumby'
4 >>> dic = {'name': 'Gumby', 'age': '18'}
5 >>> dic['phone'] = '123456'
6 >>> dic
7 {'name': 'Gumby', 'age': '18', 'phone': '123456'}

    3)dict[key] = value, 我们可以使用‘=’来给字典键为key的项关联新的值。当键不在字典中的时候,字典将添加这一键值对到字典中。

1 >>> dic = {'name': 'Gumby', 'age': '18'}
2 >>> dic['name'] = 'Alex'
3 >>> dic
4 {'name': 'Alex', 'age': '18'}

    4)使用del dict[key] 来删除键值对

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> del dic['phone']
3 >>> dic
4 {'name': 'Gumby', 'age': '18'}

    5)成员资格:使用key in dict来检查字典中是都包含键为key的值,存在返回True,反之返回False

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> 'name' in dic
3 True
4 >>> 'add' in dic
5 False

    3.字典的方法

    1.clear(self)

    clear方法将删除字典中所有的项,原字典变为空字典

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.clear()
3 >>> dic
4 {}

    2.copy(self)

    copy方法返回一个新字典,跟原字典相同,只不过这个复制是浅复制

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.copy()
3 {'name': 'Gumby', 'age': '18', 'phone': '123456'}

         3.fromkeys(*args, **kwargs)

    fromkeys方法创建一个新的字典,其中包含指定的键,对应的每个值都是一样的

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dict.fromkeys(dic)
3 {'name': None, 'age': None, 'phone': None}
4 >>> dict.fromkeys([1, 2, 3])
5 {1: None, 2: None, 3: None}
6 #传入第二个参数为‘python’,字典的每个键对应的值都为'python'
7 >>> dict.fromkeys([1, 2, 3], 'python')
8 {1: 'python', 2: 'python', 3: 'python'}

    4.get(self, k, d=None)

    get方法与上述的dict[keys]的效果类似,不同的是当k在字典中找不到的时候不会报错,会返回None或我们指定的值

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.get('name')
3 'Gumby'
4 >>> dic.get('school')
5 >>> dic.get('school','nothing')
6 'nothing'

    5.items(self)

    items方法返回一个包含字典中所有键值对的可迭代对象,每个键值对用元组返回

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.items()
3 dict_items([('name', 'Gumby'), ('age', '18'), ('phone', '123456')])
4 >>> list(dic.items())
5 [('name', 'Gumby'), ('age', '18'), ('phone', '123456')]

    6.keys(self)

    keys方法返回字典中所有键组成的可迭代对象

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.keys()
3 dict_keys(['name', 'age', 'phone'])
4 >>> list(dic.keys())
5 ['name', 'age', 'phone']

    7.pop(self, k, d=None)  与 popitem(self)

    pop方法返回指定key所对应的值,并且从字典中删除该键值对;popitem方法类似于列表中的pop方法,只是列表中的pop方法是删除最后一个元素,而popitem方法是随机删除字典中的一个键值对,并返回

 1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.pop('name')
3 'Gumby'
4 >>> dic
5 {'age': '18', 'phone': '123456'}
6 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
7 >>> dic.popitem()
8 ('phone', '123456')
9 >>> dic
10 {'name': 'Gumby', 'age': '18'}

    8.setdefault(self, k, d=None)

    setdefault方法类似于get方法,可以获取指定键所对应的值,与get方法不同的是,若key不在字典中,setdefault方法将在字典中插入指定的键值对。

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.setdefault('name')
3 'Gumby'
4 #‘school’不在该字典中,setdefault在字典中插入该键且值为None
5 >>> dic.setdefault('school')
6 >>> dic
7 {'name': 'Gumby', 'age': '18', 'phone': '123456', 'school': None}

    9.update(self, E=None, **F)

    updat方法使用一个字典中的键值对来更新另一个字典,如果包含相同的项就替换该项的值,若不存在,就添加到字典中。

1 >>> dic = {'name': 'Gumby', 'age': '18'}
2 >>> d = {'name': 'Alex', 'phone': '123456'}
3 >>> dic.update(d)
4 >>> dic
5 {'name': 'Alex', 'age': '18', 'phone': '123456'}

    10.values(self)

    values方法返回一个有字典中的值组成的可迭代对象

1 >>> dic = {'name': 'Gumby', 'age': '18', 'phone': '123456'}
2 >>> dic.values()
3 dict_values(['Gumby', '18', '123456'])
4 >>> list(dic.values())
5 ['Gumby', '18', '123456']

python-映射·字典的更多相关文章

  1. Python中字典和集合

    Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...

  2. Python的字典

    1.  Python的字典 1.1.  字典的定义 在Python中,字典是一种key-value的数据类型,也是唯一的映射类型:字典还是另一种可变容器类型,且可存储任意类型对象,其中也可包括其他容器 ...

  3. python有序字典OrderedDict()

    转python创建有序字典OrderedDict # -*- coding:utf-8 -*- """ python有序字典 需导入模块collections " ...

  4. python基础—字典

    阅读文本需要3分钟,不建议跳读 节目清单 字典是python中最重要的数据类型,字典由“键-值”对组成的集合,字典中的“值”通过“键”来引用.这里将介绍字典的定义.访问.排序等功能. 字典的创建 字典 ...

  5. python的字典及相关操作

    一.什么是字典 字典是Python中最强大的数据类型之一,也是Python语言中唯一的映射类型.映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希 ...

  6. Python的字典和JSON

    Python的字典和JSON在表现形式上非常相似 #这是Python中的一个字典 dic = { 'str': 'this is a string', 'list': [1, 2, 'a', 'b'] ...

  7. python基础--字典

    Python基础--字典 字典的常用函数: dict.clear( )--->无任何返回值 说明: 清除字典内的所有的元素 语法: In [5]: dict.clear? Type: metho ...

  8. Python dictionary 字典 常用法

    Python dictionary 字典 常用法 d = {} d.has_key(key_in)       # if has the key of key_in d.keys()          ...

  9. python:字典嵌套列表

    Python的字典{ }以键值对的形式保存数据,可以以键来访问字典中保存的值而不能用下标访问.字典中几乎可以包含任意的变量,字典,数列,元组.数列也一样. python的列表[ ]与字典不同,列表通过 ...

  10. Python的字典类型

    Python的字典类型为dict,用{}来表示,字典存放键值对数据,每个键值对用:号分隔,每个键值对之间用,号分隔,其基本格式如下: d = {key1 : value1, key2 : value2 ...

随机推荐

  1. github代码上传教程

    github 上传代码步骤 一.git以及Github Git是个正快速成长的版本控制系统,它由GitHub维护. 优势: 1.支持离线开发,离线Repository. 2.强大的分支功能,适合多个独 ...

  2. 狂欢圣诞节,Azure云邀你一起云端跑酷!

    想要速度更快? 希望绕过障碍? 还想安全抵达目的地? …… 平安夜夜游时的各种畅想,不也正是 IT 同事所追求的,更是业务发展的终极目标呀. 好啦,小编说的太多了,这样不好不好.过节休息不谈工作,那就 ...

  3. spring配置连接池和dao使用jdbcTemplate

    1 spring配置c3p0连接池 第一步 导入jar包 第二步 创建spring配置文件,配置连接池 (1)把代码中的实现在配置文件中实现 2 dao使用jdbcTemplate (1) 创建ser ...

  4. 【Leetcode】【Easy】Minimum Depth of Binary Tree

    Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ...

  5. HCNA配置手工负载分担模式链路聚合

    一.配置手工负载分担模式链路聚合 链路聚合(Link Aggregation)是将—组物理接口捆绑在一起作为一个逻辑接口来增加带宽的一种方法,又称为多接口负载均衡组(Load Sharing Grou ...

  6. 笨办法学Python(四十一)

    习题 41: 来自 Percal 25 号行星的哥顿人(Gothons) 你在上一节中发现 dict 的秘密功能了吗?你可以解释给自己吗?让我来给你解释一下,顺便和你自己的理解对比看有什么不同.这里是 ...

  7. win8+VS2012搭建OpenGL超级宝典的环境

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/booirror/article/details/36957799 自从公司搬到腾讯附近,每天上班都迟 ...

  8. python:类与对象命名空间、面对对象的组合用法

    1,类里可以定义两种属性: #静态属性 #静态属性就是直接在类中定义的变量 #动态属性 #动态属性就是定义在类中的方法 class Course: language = ['Chinese']#静态属 ...

  9. LA 4987 背包

    题意: 有n个施工队,给定他们的位置,有m个防空洞,给定位置,求将施工队放到m个防空洞里面,最少的总距离? n<=4000 分析: dp[i][j] 前 i 个施工队,放到前 j 个防空洞里面的 ...

  10. Jmeter 登陆性能测试

    1.打开Jmeter,新建一个线程组:测试计划--添加--Threads(users)---线程组 如图: 2.首先要添加一个HTTP默认请求,为什么要添加这个呢? 如果要测试的系统域名或者IP地址是 ...