一. 字典
#字典
dict1 = {'name':'lzc','age':'20','sex':'man'}
print dict1
print type(dict1)
>>> {'age': '20', 'name': 'lzc', 'sex': 'man'}
>>> <type 'dict'>
 
 
#list() tuple() dict() 相互转换
k1 = dict(a=1,b=2,c=3)
print k1
>>> {'a': 1, 'c': 3, 'b': 2}
 
k2 = dict([('name','lzc'),('age','20')])
print k2
>>> {'age': '20', 'name': 'lzc'}
 
 
 
二.字典常用的方法
#字典常用的方法
print dir(dict)
>>> 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues
 
#clear() 用于删除字典内所有元素
k3 = {'name':'lzc','age':20,'sex':'man'}
print k3
print k3.clear() //clear清除了字典k3中的所有元素
>>> {'age': 20, 'name': 'lzc', 'sex': 'man'}
>>> None
 
 
#copy() 方法返回一个字典的浅复制
#copy 复制一个字典
k3 = {'name':'lzc','age':20,'sex':'man'}
k4 = k3.copy()
print k4
>>> {'age': 20, 'name': 'lzc', 'sex': 'man'}
 
 
#get 返回函数指定key的值,即key对应的value的值
k3 = {'name':'lzc','age':20,'sex':'man'}
print k3.get('name')
print k3.get('age')
print k3.get('sex')
>>> lzc
>>> 20
>>> man
 
通过格式化方式,通过key获取value值
k3 = {'name':'lzc','age':20,'sex':'man'}
print 'name %s' % k3.get('name')
print 'age %s' % k3.get('age')
print 'sex %s' % k3.get('sex')
>>> name lzc
>>> age 20
>>> sex man
 
 
#setdefault() 与get()方法类似,如果键值不存在于字典中,将会添加键值并将值设置为默认值
k3 = {'name':'lzc','age':20,'sex':'man'}
print k3.setdefault('name')
print k3.setdefault('age')
print k3.setdefault('sex')
print '^^^^^'*20
>>> lzc
>>> 20
>>> man
>>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
print k3.setdefault('name','liuzhenchuan')
print k3.setdefault('age','liuzhenchuan')
print k3.setdefault('address','beijing')
print k3
>>> lzc //说明,如果key所对应的value值存在则不会更改
>>> 20
>>> beijing //key所对应的value值不存在,添加默认的键值到
字典中
>>> {'age': 20, 'address': 'beijing', 'name': 'lzc', 'sex': 'man'}
 
 
#keys() 以列表形式返回一个字典的所有键值
k3 = {'name':'lzc','age':20,'sex':'man'}
print k3.keys()
>>> ['age', 'name', 'sex']
 
#formkesy()方法 字典高级需求。把列表l中的元素当做字典中的keys值
l = ['a','b','c']
m = {}
n = m.fromkeys(l,'values')
print n
>>> {'a': 'values', 'c': 'values', 'b': 'values'}
 
注:也可以把 m.fromkeys 换成dict.formkeys
l = ['a','b','c']
m = {}
n = dict.fromkeys(l,'values')
print n
>>> {'a': 'values', 'c': 'values', 'b': 'values'}
 
#update() 方法,将dict2的键值对添加到dict。此方法不返回任何内容。
dict = {'name':'maxsu','age':7}
dict2 = {'sex':'female'}
dict.update(dict2)
print dict
>>> {'age': 7, 'name': 'maxsu', 'sex': 'female'}
 
 
# sorted 对字典进行排序 .用key函数排序,返回有tuple组成的list
# iteritems 函数变量
# lambda d :匿名函数d,d[1] 从第一位开始,切片
#reverse = False 反向排序
# reverse = True 降序
# reverse = False 升序
 
students = [('join','A',15),('jane','B',12),('dave','B',20)]
print sorted(students,key=lambda student:student[2],reverse=False) //student[2] 按着students列表切片2的位置,升序排序
>>> [('jane', 'B', 12), ('join', 'A', 15), ('dave', 'B', 20)]
 
#items() 函数以列表返回可遍历的(键,值)元组数组
dict2 = {'a':1,'b':2,'c':3,'d':4,'e':5}
print dict2.items()
for i in dict2.items():
print i
>>> [('a', 1), ('c', 3), ('b', 2), ('e', 5), ('d', 4)]
('a', 1)
('c', 3)
('b', 2)
('e', 5)
('d', 4)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

python 基础 1.5 python数据类型(四)--字典常用方法示例的更多相关文章

  1. Python基础知识总结笔记(四)函数

    Python基础知识总结笔记(四)函数python中的函数函数中的参数变量作用域偏函数PFA递归函数高阶函数BIFs中的高阶函数匿名函数lambda闭包Closure装饰器Decorator函数式编程 ...

  2. python基础系列教程——Python中的编码问题,中文乱码问题

    python基础系列教程——Python中的编码问题,中文乱码问题 如果不声明编码,则中文会报错,即使是注释也会报错. # -*- coding: UTF-8 -*- 或者 #coding=utf-8 ...

  3. python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda

    ---恢复内容开始--- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda 从头开启python的开发环境搭建.安装比较简单, ...

  4. python基础系列教程——Python库的安装与卸载

    python基础系列教程——Python库的安装与卸载 2.1 Python库的安装 window下python2.python3安装包的方法 2.1.1在线安装 安装好python.设置好环境变量后 ...

  5. python基础之五大标准数据类型

    学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个"你好,世界"并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常 ...

  6. Python基础(二) —— 字符串、列表、字典等常用操作

    一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...

  7. python基础1之python介绍、安装、变量和字符编码、数据类型、输入输出、数据运算、循环

    开启python之路 内容概要: 一.python介绍 二.安装 三.第一个python程序 四.变量和字符编码 五.用户输入 六.数据类型 七.一切皆对象 八.数据运算 九.if else 流程判断 ...

  8. 第二章:Python基础の快速认识基本数据类型和操作实战

    本课主题 字符串和操作实战 二进制操作实战 List 列表和操作实战 Tuple 元組和操作实战 Dict 字典和操作实战 作業需求 引言 这遍文章简单介绍了 Python 字符串和集合的方法和应用, ...

  9. python基础(2)---数据类型

    1.python版本间的差异: 2.x与3.x版本对比 version 2.x 3.x print print " "或者print()打印都可以正常输出 只能print()这种形 ...

  10. Python 基础之四初识Python数据类型

    数字 Int,整型 Float,浮点型 Long,长整型 布尔 字符串 列表 元组 字典 1.数字 INT(整型) 在32位系统上,整数的位数为32位,取值范围为-2**31~2**31-1,即-21 ...

随机推荐

  1. hdu 1548(最短路)

    A strange lift Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)To ...

  2. ZOJ 3593.One Person Game-扩展欧几里得(exgcd)

    智障了,智障了,水一水博客. 本来是个水题,但是for循环遍历那里写挫了... One Person Game Time Limit: 2 Seconds      Memory Limit: 655 ...

  3. Fiddler简介以及web抓包

    Fiddler简介以及web抓包 版权声明:本文为博主原创文章,未经博主允许不得转载. 一.Fiddler简介简单来说,Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联 ...

  4. 利用Django徒手写个静态页面生成工具

    每个Geek对折腾自己的博客都有着一份执念 背景介绍 曾经多次在不同的平台写博客,但全部都以失败而告终.去年七月选择微信公众号做为平台开始了又一次的技术分享,庆幸一直坚持到现在,但随着文章发表的越来越 ...

  5. [HAOI2011]Problem b&&[POI2007]Zap

    题目大意: $q(q\leq50000)$组询问,对于给定的$a,b,c,d(a,b,c,d\leq50000)$,求$\displaystyle\sum_{i=a}^b\sum_{j=c}^d[\g ...

  6. mysql之select,insert,delete,update

    写在前面 上篇文章学习了创建数据库和数据表,这篇文章将学习对数据表的增删改查操作. 系列文章 mysql之创建数据库,创建数据表 一个例子 上篇文章中,创建了数据库和数据表,数据表中还没有数据,这里我 ...

  7. mac 破解photoshop cs6

    1 首先安装photoshop cs6,安装好后退出 2 下载破解补丁 破解补丁文件网盘下载:https://pan.baidu.com/s/1hrXieqS 或自行在百度网页里搜amtlib.fra ...

  8. CSS 属性选择器的深入挖掘

    CSS 属性选择器,可以通过已经存在的属性名或属性值匹配元素. 属性选择器是在 CSS2 中引入的并且在 CSS3 中得到了很好拓展.本文将会比较全面的介绍属性选择器,尽可能的去挖掘这个选择器在不同场 ...

  9. JAVA_StandardServer await create[8005]怎么办

    Tomcat 6.0 错误信息: 严重: StandardServer.await:create[8005]: java.net.BindException: Address already in u ...

  10. Zabbix的前台SQL注射漏洞利用

    今年8月份Map在wooyun上发了个Zabbix某前台SQL注射漏洞 ,11月份才公开. 漏洞详情大约是这样的: 在zabbix前端存在一个SQL注射漏洞,由于zabbix前台可以在zabbix的s ...