day2 字典常用的方法
字典创建的方式:
(1)d1 = {"k1":"v1","k2":"v2","k3":"v3"}
(2)dic = dict(k1="v1",k2="v2",k3="v3")
字典是由键值对组成的,keys()代表所有的键,values()代表所有对应的值,items()是所有的键值对。
1.get(self,key,d=None)
get(self,key,d=None)获取字典中指定键的值,get()是用来避免键不存在时候的错误,我们来看一个实例:
>>> dic = {'k3': 'v3', 'k1': 'v1', 'k2': 'v2'}
>>> dic["k2"]
'v2'
>>> dic["k4"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'k4'
>>> a = dic.get("k4","not exit")
>>> a
'not exit'
上面代码中,我们知道,如果使用dict[key]如果键key不存在,那么就会报错,KeyError,键不存在,get(self,key,d=None)就是避免这种情况出现的,我们知道,使用get()方法如果获取不到,默认返回的是None,但是我们也可以指定我们要求返回的值,上面返回的是,不存在键。
2.pop(self,k,d=None)
pop(self,k,d=None)我们知道,字典是无序的,因此我们删除字典中元素的时候,必须告诉字典删除那个一元素。当这个键不存在的时候,默认返回的是None,我们也可以自己指定返回值。
>>> d1 = {'k3': 'v3', 'k1': 'v1', 'k2': 'v2'}
>>> d1.pop("k3")
'v3'
>>> d1.pop("k4",666)
666
从上面代码可以看出,我们首先删除的是"k3",由于"k3"存在,因此删掉了键值对,接着我们删除"k4",由于"k4"不存在,我们指定了如果指定的键不存在,返回什么样的值。我们默认返回的是666.
3.popitem(self)
popitem(self)随机删除字典中的元素。
>>> d1 = {'k1': 'v1', 'k2': 'v2'}
>>> d1["k3"] = "v3"
>>> d1.popitem()
('k3', 'v3')
>>> d1.popitem()
('k1', 'v1')
popitem(self)删除元素,随机删除字典中的键值对,随机的,popitem()
4.setdefault(self,k,d=None)
setdefault(self,k,d=None)向字典中添加元素,默认如果没有指定键的话,就把值当做None。实例如下:
>>> d1 = {'k2': 'v2'}
>>> d1.setdefault("k3") (1)
>>> d1
{'k3': None, 'k2': 'v2'}
>>> d1.setdefault("k1","v1")
'v1'
>>> d1
{'k3': None, 'k1': 'v1', 'k2': 'v2'}
setdefault(self,k,d=None)是向字典中添加元素,如果没有指定值,默认为None,如上(1)处。
5.update(self,E=None,**F)
>>> d1 = {'k3': None, 'k1': 'v1', 'k2': 'v2'}
>>> d1.update(k5="v5") (1)
>>> d1
{'k5': 'v5', 'k3': None, 'k1': 'v1', 'k2': 'v2'}
>>> d1.update(k6="v6",k7="v7")
>>> d1
{'k5': 'v5', 'k7': 'v7', 'k3': None, 'k1': 'v1', 'k6': 'v6', 'k2': 'v2'}
>>> d1.update({"k11":"v11"}) (2)
>>> d1
{'k11': 'v11', 'k5': 'v5', 'k7': 'v7', 'k3': None, 'k1': 'v1', 'k6': 'v6', 'k2': 'v2'}
上面我们使用update()方法来更新字典,其实就相当于列表中的extend()的方法,以组的形式向字典中添加元素。使用update()向字典中添加元素有两种方式,如上(1)和(2),一种是以键值对(key-value)形式进行添加,还有一种是以字典的形式进行添加(key:value)。
day2 字典常用的方法的更多相关文章
- Python学习入门基础教程(learning Python)--8.3 字典常用的方法函数介绍
本节的主要讨论内容是有关dict字典的一些常用的方法函数的使用和范例展示. 1. clear清除字典数据 语法结构如下: dict_obj.clear() 示例代码如下: dict1 = {'web' ...
- python中字典常用的方法
#定义一个空字典: a={ } 定义一个字典: d={'age':18} #增加一个元素: d['age']=20 d[k]=v d.setdefault('age',18) d.setde ...
- Python语言学习:字典常用的方法
1. 增加:字典[key]=value(不存在的key和value) info={ 'stu1101':'TengLan', 'stu1102':'LuoZe', 'stu1103':'XiaoZe' ...
- python学习笔记:(七)dict(字典)常用的方法
字典是通过名称来引用值的数据结构,这种类型的数据结构称为:映射. 字典是python中唯一的内建映射类型. 注意: 1.字典中键必须是唯一的,如果同一个键被赋值两次,会使用后一个值: 2.键必须不可变 ...
- Python - 基本数据类型及其常用的方法之字典和布尔值
字典 特点:{"key1": value1, "key2":value2} , 键值对中的值可以为任何数据类型,键不能为列表.字典(无法哈希),布尔值可以为键 ...
- day2 列表中常用的方法
列表中有很多方法,下面来看看常用的方法,我们知道,字符串是以字符列表形式存储的.因此上面学习的字符串中的很多方法在列表中也有. 1.extend() extend()列表的扩展,把两个列表进行 ...
- WebAPi添加常用扩展方法及思维发散
前言 在WebAPi中我们通常需要得到请求信息中的查询字符串或者请求头中数据再或者是Cookie中的数据,如果需要大量获取,此时我们应该想到封装一个扩展类来添加扩展方法,从而实现简便快捷的获取. We ...
- Objective-C中字典的使用方法总结
在Objective-C中提供了两个类来实现字典,即NSDictionary和NSMutableDictionary.其中,NSMutableDictionary是NSDictionary的子类,它继 ...
- python_json常用的方法
1. 什么是JSON? JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端 ...
随机推荐
- 流媒体协议之RTSP客户端的实现20171014
RtspClient是基于jrtplib实现的,目前仅支持h264格式,后续将不断迭代优化,加入对其他格式的支持,并且将实现RTSP的服务端. RtspClient的功能是接收服务端过来流,然后写入到 ...
- java 根据包名、目录名获取所有定义的类
/** * Scans all classes accessible from the context class loader which belong to the given package a ...
- STL源码分析-deque
http://note.youdao.com/noteshare?id=66f21dca07c1984f41848700021644fd
- 题解【CF277E Binary Tree on Plane】
Description 给你平面上 \(n\) 个点 \((2 \leq n \leq 400)\),要求用这些点组成一个二叉树(每个节点的儿子节点不超过两个),定义每条边的权值为两个点之间的欧几里得 ...
- .Net并行编程之二:并行循环
本篇内容主要包括: 1.能够转化为并行循环的条件 2.并行For循环的用法:Parallel.For 3.并行ForEach的用法Parallel.ForEach 4.并行LINQ(PLINQ)的用法 ...
- Scratch编程小案例:愤怒的小牛
愤怒的小鸟曾经很热门,网上还说他是程序员最喜欢玩的游戏.最先我是WIKIOI的评测页面看到他的,后来在2014年全国信息学奥林匹克联赛第一天第三题飞扬的小鸟也看到了它.因此,突然想做一个类似愤怒的小鸟 ...
- /etc/rc.d/里文件的作用
rc.sysinit指的是系统启动不管进哪个运行级别必须做的初始化工作, rcn.d目录指的是系统进对应n的运行级别时候系统必须做的工作,目录下S打头的服务指进此运行级别时候启动的服务,而K打头的指离 ...
- Web 开发者易犯的5大严重错误
无论你是编程高手,还是技术爱好者,在进行Web开发过程中,总避免不了犯各种各样的错误. 犯了错误,可以改正.但如果犯了某些错误,则会带来重大损失.遗憾.令人惊讶的是,这些错误往往是最普通,最容易避免. ...
- 给你灵感!21个精美的 iOS APP 网站设计欣赏
iOS 吹起了轰轰烈烈的扁平化设计风格,而做为承载 App 宣传重任的网页,整体设计风格的变迁如何?是否也如iOS的设计风格改革一样彻底的翻转?还是如往常一直深耕成熟的设计风格? Spendee Fo ...
- 搭建hibernate
需要导入的hibernate的包 其中所需要的依赖包 需要的配置文件 一个是元数据orm的配置文件 例如 package com.fmt.hibernate;public class Custome ...