一. 字典
#字典
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. myeclipse服务器"未能创建视图:抛出意外异常。"

    找到对应目录 Workspaces\.metadata\.plugins\org.eclipse.core.runtime\.settings 下的 com.genuitec.eclipse.ast. ...

  2. LeetCode OJ-- Valid Sudoku

    https://oj.leetcode.com/problems/valid-sudoku/ 给出数独的一部分来,验证给出的这一部分是否为 valid 行上无重复的,且是从 ‘1’ 到‘9’ 列上无重 ...

  3. AC日记——营业额统计 1296 codevs

    1296 营业额统计 2002年  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 大师 Master 题解  查看运行结果     题目描述 Description Tiger ...

  4. LOJ N!在不同进制的位数

    lightoj1045 - Digits of Factorial (N!不同进制的位数) 对于一个B进制的数,只需要对其取以B的对数就可以得到他在B进制情况下的位数(取了对数之后可能为小数,所以还需 ...

  5. BZOJ1801 [Ahoi2009]chess 中国象棋(DP, 计数)

    题目链接 [Ahoi2009]chess 中国象棋 设$f[i][j][k]$为前i行,$j$列放了1个棋子,$k$列放了2个棋子的方案数 分6种情况讨论,依次状态转移. #include <b ...

  6. 洛谷——P1977 出租车拼车

    题目背景 话说小 x 有一次去参加比赛,虽然学校离比赛地点不太远,但小 x 还是想坐 出租车去.大学城的出租车总是比较另类,有“拼车”一说,也就是说,你一个人 坐车去,还是一堆人一起,总共需要支付的钱 ...

  7. Autolayout 03

    Debugging in Code 有两个调试layout问题的阶段. 1. Map from “this view is in the wrong place” to “this constrain ...

  8. 浅谈XXE攻击

    一.XXE,即XML External Entity,XML外部实体.ENTITY 实体,在一个甚至多个XML文档中频繁使用某一条数据,我们可以预先定义一个这条数据的“别名”,即一个ENTITY,然后 ...

  9. SVG图片背景透明

    今天在调整网页的时候,将logo以原有直接贴代码形式,改为加载文件. 其实真正的目的是做SEO.上次SEO交流后得出 结论:核心在于内容的本身的优化.信噪比很重要.也就是有效信息需要占文章的主要内容, ...

  10. Linux下ntp时间同步

    在root用户下执行 先安装同步时间软件,每台机器执行 yum install -y ntp 然后执行以下命令: crontab -e */10 * * * * /usr/sbin/ntpdate - ...