1.清空字典中元素清空,dict变为{}

L.clear()-> None.  Remove all items from L

1
2
3
4
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.clear()
>>> print L
{}

2. 返回一个字典的浅复制

L.copy()-> a shallow copy of L

1
2
3
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.copy()
{'shaw': 23, 'sam': 36,'eric': 40}

3. 用于创建一个新字典,以序列seq中元素做字典的键,value为字典所有键对应的初始值(默认为“None”)

Lict.fromkeys(S[,v])-> New Lict with keys from S and values equal to v. v defaults toNone.

1
2
3
4
5
6
7
>>> seq =('shaw','sam','stiven')
>>> name =dict.fromkeys(seq)
>>> print "listone:{}".format(name)
listone :{'stiven': None,'shaw': None, 'sam': None}
>>> name =dict.fromkeys(seq,1000)
>>> print"listone :{}".format(name)
listone :{'stiven': 1000,'shaw': 1000, 'sam': 1000}

4.返回指定键的值,如果值不在字典中返回默认值(None)

D.get(k[,d])-> D[k] if k in D, else d.  d defaultsto None.

1
2
3
4
5
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.get('shaw')
23
>>> printL.get('stiven')
None

5.用于判断键是否存在于字典中,如果键在字典dict里返回true,否则返回false

L.has_key(k) -> True if D has a key k,else False

1
2
3
4
5
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.has_key('sam')
True
>>>L.has_key('linux')
False

6. 以列表的方式返回可遍历的(键, 值) 元组(键值对)

L.items()-> list of D's (key, value) pairs, as 2-tuples

1
2
3
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.items()
[('shaw', 23), ('sam', 36),('eric', 40)]

7. 以列表的方式返回一个字典所有的键

L.keys()-> a set-like object providing a view on L's keys

1
2
3
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.keys()
['shaw', 'sam', 'eric']

8. 删除某个键值对

D.pop(k[,d])-> v, remove specified key and return the corresponding value. If key is notfound, d is returned if given, otherwise KeyError is raised

1
2
3
4
5
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.pop('sam')
36
>>> L
{'shaw': 23, 'eric': 40}

9. 默认删除字典中第一个键值对

D.popitem()-> (k, v), remove and return some (key, value) pair as a 2-tuple; but raise KeyError if D is empty.

1
2
3
4
5
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> L.popitem()
('shaw', 23)
>>> L
{'sam': 36, 'eric': 40}

10. setdefault()方法和get()方法类似,如果键不已经存在于字典中,将会添加键并将值设为默认值(如果dict中已有a,则不会被覆盖)

D.setdefault(k[,d]) ->D.get(k,d), also set D[k]=d if k not in D

1
2
3
4
5
6
7
8
9
10
11
12
>>> L ={'shaw':23,'sam':36,"eric":40}
>>>L.setdefault('stiven')
>>> L
{'stiven': None, 'shaw': 23,'sam': 36, 'eric': 40}
>>>L.setdefault('mira',65)
65
>>> L
{'stiven': None, 'mira': 65,'shaw': 23, 'sam': 36, 'eric': 40}
>>>L.setdefault('shaw',18)
23
>>> L
{'stiven': None, 'mira': 65,'shaw': 23, 'sam': 36, 'eric': 40}

11. 把字典dict2的键/值对更新到dict里

L.update()

1
2
3
4
5
>>> L ={'shaw':23,'sam':36,"eric":40}
>>> A ={'book':45,'apple':13}
>>> L.update(A)
>>> L
{'book': 45, 'apple': 13,'shaw': 23, 'sam': 36, 'eric': 40}

12.返回dic所有的值

L.values(…)

1
2
3
>>> L ={'book':45,'apple':13}
>>> L.values()
[45, 13]

Python字典方法总结的更多相关文章

  1. Python 字典方法

    访问字典的值 字典中的 键/值 实际上就是一种映射关系,只要知道了 “键”,就肯定知道 “值”. >>> my_dict = dict(name = 'zhangsan',other ...

  2. python字典方法

    本文参考自<python基础教程 (第二版)> 操作 语法 举例 结果 建立字典 dict() 1.以关键字参数建立字典 2.以其他映射作为参数建立字典 1.d = dict(name=' ...

  3. Python字典方法copy()和deepcopy()的区别

    from copy import deepcopy # import deepcopy模块 d = {} d['name'] = ['black', 'guts'] # d = {'name': [' ...

  4. python字典copy()方法

    python 字典的copy()方法表面看就是深copy啊,明显独立 d = {'a':1, 'b':2} c = d.copy() print('d=%s c=%s' % (d, c)) Code1 ...

  5. Python 字典(Dictionary) get()方法

    描述 Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值. 语法 get()方法语法: dict.get(key, default=None) 参数 ...

  6. Python 字典(Dictionary) setdefault()方法

    描述 Python 字典(Dictionary) setdefault() 函数和get()方法类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值. 语法 setdefault()方法语法: ...

  7. python 字典内置方法get应用

    python字典内置方法get应用,如果我们需要获取字典值的话,我们有两种方法,一个是通过dict['key'],另外一个就是dict.get()方法. 今天给大家分享的就是字典的get()方法. 这 ...

  8. Python 字典(Dictionary) has_key()方法

    描述 Python 字典(Dictionary) has_key() 函数用于判断键是否存在于字典中,如果键在字典dict里返回true,否则返回false. 语法 has_key()方法语法:dic ...

  9. Python 字典 fromkeys()方法

    Python 字典 fromkeys() 方法用于创建一个新的字典,并以可迭代对象中的元素分别作为字典中的键,且所有键对应同一个值,默认为None. fromkeys() 方法语法: 1 dict.f ...

随机推荐

  1. vim使用过程

    首先推荐几篇文章先: 用Vim编程——配置与技巧 有时候需要设置映射键,此时可以在.vimrc中配置一些项就可以轻松映射了. 以下是几个映射模式: map : 正常模式,可视化模式和运算符模式可用 n ...

  2. JavaSE坦克网络版

    02.1.建立Server(保持这个TankServer一直运行) package server; public class TankServer { public static void main( ...

  3. ATMEL处理器自带USB CDC的Win7驱动问题

    [背景] 很久以前使用ATMEL的处理器开发了一款设备,通过处理器本身的功能,借助USB在PC端虚拟一个串口出来,实现和上位机软件的通信,和基本的参数设置和数据读取功能. 这个功能就是ATMEL官网上 ...

  4. 黑马程序员——JAVA基础之装饰设计模式

    ------- android培训.java培训.期待与您交流! ---------- 装饰设计模式: 当想要对已有的对象进行功能增强时,可以定义类,将已有对象传入,基于已有的功能,并提供加强功能. ...

  5. LNMP编译安装教程

    LNMP编译安装教程 此次安装在Centos上,我采用的CentOS的版本是:CentOS release 6.5 (Final) 可以通过以下命令查看:lsb_release -a 一.准备工作: ...

  6. android四大组件之ContentProvider(一)

    ContentProvider学习笔记 1. ContentProvider基本概念 ContentProvider向我们提供了我们在应用程序之间共享数据的一种机制,虽然采用文件和SharedPref ...

  7. Java 学习总结(一)

    1.     概述 1.1           dos命令行--常见的命令 l  dir : 列出当前目录下的文件以及文件夹 l  md : 创建目录 l  rd : 删除目录 l  cd : 进入指 ...

  8. HttpSession的线程安全问题及注意事项

    摘自http://blog.csdn.net/java2000_net/article/details/2922357 HttpSession session =  request.getSessio ...

  9. Java事务处理全解析(五)—— Template模式

    在本系列的上一篇文章中,我们讲到了使用TransactionManger和ConnectionHolder完成线程安全的事务管理,在本篇中,我们将在此基础上引入Template模式进行事务管理. Te ...

  10. Access使用参数化UPDATE数据时,数据无法更新的问题

    今天update access数据库时,使用了参数化的方式,结果不报错,但是数据也没有更新.经过google发现access使用参数化时,参数位置必须和赋值顺序相同才行,否则更新时就会出现数据无法更新 ...