一. 字典
#字典
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. javascript 动态添加城市

    匿名函数的使用 createTextnode 创建文本 createElement   创建元素 appendChild     将文本或元素追加 <!DOCTYPE html> < ...

  2. ASP.NET MVC 实现 AJAX 跨域请求

    ASP.NET MVC 实现AJAX跨域请求的两种方法 和大家分享下Ajax 跨域的经验,之前也找了好多资料,但是都不行,后来看到个可行的修改了并测试下 果然OK了   希望对大家有所帮助! 通常发送 ...

  3. 在Android 7.0以上PopupWindow.showAsDropDown()不起作用问题

    最近优化界面,调用PopupWindow.showAsDropDown()发现,窗口并没有在控件下方显示. 有网友说是7.0以上系统的问题,可以自定义PopupWindow,重写showAsDropD ...

  4. python-re之中文匹配

    #coding=utf-8 import re import chardet#检测网页编码形式的模块 p = re.compile(r'\d+') print p.findall('one1two2t ...

  5. CSU-ACM2018寒假集训选拔-入门题

    [题目链接]:http://vj.bit-studio.cn/contest/205664#overview A: [给你一个长度为n的序列,尾部插入再反转,求n次后最终序列][规律/思维] [分析] ...

  6. 1219 骑士游历(棋盘DP)

    1997年  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解    题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如 ...

  7. google搜索打不开?提供 国内几个给力的服务器

    http://203.208.46.145/ 这是北京的机器,快到飞起来. http://74.125.224.232/, 屡试不爽 用编辑器打开C:\WINDOWS\system32\drivers ...

  8. bzoj 5123: [Lydsy1712月赛]线段树的匹配

    设f[0/1][x]为区间[1,x]的根向下 不选(0)或者选(1)  的dp pair<最优值,方案数>. 可以很容易的发现总状态数就是log级别的,因为2*n 与 (2*n+1 或者 ...

  9. AMD 的 CommonJS wrapping

    其实本文的标题应该是「为什么我不推荐使用 AMD 的 Simplified CommonJS wrapping」,但太长了不好看,为了美观我只能砍掉一截. 它是什么? 为了复用已有的 CommonJS ...

  10. go --socket通讯(TCP服务端与客户端的实现)

    这篇文章主要使用Go语言实现一个简单的TCP服务器和客户端.服务器和客户端之间的协议是 ECHO, 这个RFC 862定义的一个简单协议.为什么说这个协议很简单呢, 这是因为服务器只需把收到的客户端的 ...