字典创建的方式:

(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 字典常用的方法的更多相关文章

  1. Python学习入门基础教程(learning Python)--8.3 字典常用的方法函数介绍

    本节的主要讨论内容是有关dict字典的一些常用的方法函数的使用和范例展示. 1. clear清除字典数据 语法结构如下: dict_obj.clear() 示例代码如下: dict1 = {'web' ...

  2. python中字典常用的方法

    #定义一个空字典: a={ } 定义一个字典: d={'age':18} #增加一个元素: d['age']=20   d[k]=v d.setdefault('age',18)    d.setde ...

  3. Python语言学习:字典常用的方法

    1. 增加:字典[key]=value(不存在的key和value) info={ 'stu1101':'TengLan', 'stu1102':'LuoZe', 'stu1103':'XiaoZe' ...

  4. python学习笔记:(七)dict(字典)常用的方法

    字典是通过名称来引用值的数据结构,这种类型的数据结构称为:映射. 字典是python中唯一的内建映射类型. 注意: 1.字典中键必须是唯一的,如果同一个键被赋值两次,会使用后一个值: 2.键必须不可变 ...

  5. Python - 基本数据类型及其常用的方法之字典和布尔值

    字典 特点:{"key1": value1, "key2":value2}  , 键值对中的值可以为任何数据类型,键不能为列表.字典(无法哈希),布尔值可以为键 ...

  6. day2 列表中常用的方法

    列表中有很多方法,下面来看看常用的方法,我们知道,字符串是以字符列表形式存储的.因此上面学习的字符串中的很多方法在列表中也有.     1.extend() extend()列表的扩展,把两个列表进行 ...

  7. WebAPi添加常用扩展方法及思维发散

    前言 在WebAPi中我们通常需要得到请求信息中的查询字符串或者请求头中数据再或者是Cookie中的数据,如果需要大量获取,此时我们应该想到封装一个扩展类来添加扩展方法,从而实现简便快捷的获取. We ...

  8. Objective-C中字典的使用方法总结

    在Objective-C中提供了两个类来实现字典,即NSDictionary和NSMutableDictionary.其中,NSMutableDictionary是NSDictionary的子类,它继 ...

  9. python_json常用的方法

    1. 什么是JSON? JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端 ...

随机推荐

  1. Educational Codeforces Round 24 A 水 B stl C 暴力 D stl模拟 E 二分

    A. Diplomas and Certificates time limit per test 1 second memory limit per test 256 megabytes input ...

  2. isnotblank与isnotempty的区别

  3. python学习(十六)写爬虫爬取糗事百科段子

    原文链接:爬取糗事百科段子 利用前面学到的文件.正则表达式.urllib的知识,综合运用,爬取糗事百科的段子先用urllib库获取糗事百科热帖第一页的数据.并打开文件进行保存,正好可以熟悉一下之前学过 ...

  4. 修改ranger ui的admin用户登录密码踩坑小记

    修改的ranger ui的admin用户登录密码时,需要在ranger的配置里把admin_password改成一样的,否则hdfs的namenode在使用admin时启动不起来,异常如下: Trac ...

  5. 「Django」学习之路,持续更改

    一.setting设置 1.设置 局域网可以部署连接 ALLOWED_HOSTS = ['*.besttome.com','192.168.1.100'] 2.static配置 STATIC_URL ...

  6. jinja2 中的 Template 批量替换json字符串中的内容

    项目中用到elasticsearch,使用Json格式查询方式,一个查询语句中有好几个地方需要替换,且替换的值都相同.最开始把json转为字符串发方式,利用format函数处理,发现再转回json时无 ...

  7. (转) 使用vivado创建工程 3

    Create a Hello World application In this experiment we will use Xilinx SDK to create a simple Hello ...

  8. C语言 两个小知识点

    strlen 函数原型 extern unsigned int strlen(char *s); 在Visual C++ 6.0中,原型为size_t strlen(const char *strin ...

  9. Tensorflow实现学习率衰减

    Tensorflow实现学习率衰减 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 Deeplearning AI Andrew Ng Tensorflow1.2 API 学习率衰减 ...

  10. bzoj 1430: 小猴打架

    1430: 小猴打架 Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 634  Solved: 461[Submit][Status][Discuss] ...