一. 字典
#字典
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基础知识总结笔记(四)函数
Python基础知识总结笔记(四)函数python中的函数函数中的参数变量作用域偏函数PFA递归函数高阶函数BIFs中的高阶函数匿名函数lambda闭包Closure装饰器Decorator函数式编程 ...
- python基础系列教程——Python中的编码问题,中文乱码问题
python基础系列教程——Python中的编码问题,中文乱码问题 如果不声明编码,则中文会报错,即使是注释也会报错. # -*- coding: UTF-8 -*- 或者 #coding=utf-8 ...
- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda
---恢复内容开始--- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda 从头开启python的开发环境搭建.安装比较简单, ...
- python基础系列教程——Python库的安装与卸载
python基础系列教程——Python库的安装与卸载 2.1 Python库的安装 window下python2.python3安装包的方法 2.1.1在线安装 安装好python.设置好环境变量后 ...
- python基础之五大标准数据类型
学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个"你好,世界"并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常 ...
- Python基础(二) —— 字符串、列表、字典等常用操作
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...
- python基础1之python介绍、安装、变量和字符编码、数据类型、输入输出、数据运算、循环
开启python之路 内容概要: 一.python介绍 二.安装 三.第一个python程序 四.变量和字符编码 五.用户输入 六.数据类型 七.一切皆对象 八.数据运算 九.if else 流程判断 ...
- 第二章:Python基础の快速认识基本数据类型和操作实战
本课主题 字符串和操作实战 二进制操作实战 List 列表和操作实战 Tuple 元組和操作实战 Dict 字典和操作实战 作業需求 引言 这遍文章简单介绍了 Python 字符串和集合的方法和应用, ...
- python基础(2)---数据类型
1.python版本间的差异: 2.x与3.x版本对比 version 2.x 3.x print print " "或者print()打印都可以正常输出 只能print()这种形 ...
- Python 基础之四初识Python数据类型
数字 Int,整型 Float,浮点型 Long,长整型 布尔 字符串 列表 元组 字典 1.数字 INT(整型) 在32位系统上,整数的位数为32位,取值范围为-2**31~2**31-1,即-21 ...
随机推荐
- 【剑指offer】二维数组中的查找☆
题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 自己的思路实在 ...
- 2014年国内最热门的.NET开源平台
http://developer.51cto.com/art/201501/464292.htm
- java基础篇2之枚举
1.为什么要有枚举 问题:要定义星期几或者性别的变量,该怎么定义? 假设用1-7分别表示星期一到星期日,但有人可能会写成int weekday=0; 枚举就是要让某个类型的变量的取值只能为若干个固定值 ...
- 【前端阅读】——《JavaScript应用开发技术详解指南》摘记&思维导图
读这本书,我主要关注三个部分:JavaScript内置函数,程序调试以及Ajax基础.由于多是介绍基本概念,所以,采用思维导图的方式,做了一个梳理,以下就是精简的主要内容. 注:转载请注明出处
- maven仓库中有jar包pom还报错
maven仓库中有jar包pom还报错 就报错,咋啦? 这个包来源不明,自己拷贝进来的吧?你当我mvn是傻子?我要去网上验证一下: 我自己有个_remote.respositories文件,如果自己用 ...
- 报错: Access restriction: The type JPEGImageEncoder is not accessible due to restriction on required library
报错: Access restriction:The type JPEGCodec is not accessible due to restriction on required library C ...
- zookeeper客户端 和服务器连接时版本问题
在使用kafka 和zookeeper 实现实时分析程序时,由于zookeeper部署版本和分析程序导入jar包的版本不一致,导致了当实时分析程序从远程服务器连接kafka集群的zookeeper时报 ...
- 微信小程序-上传多张图片加进度条(支持预览、删除)
2018-12-24 详情示例见:https://www.cnblogs.com/cisum/p/9564898.html 2018-12-29 组件下载见:https://www.cnblogs.c ...
- shell中sed命令
sed -i '/cd ${LDIR_DEST}\/webextend\/pc && ln -s \/hard\/www_winclient\/bboxpc.exe ./a\ \tcd ...
- PHP之面向对象学习
1.类 Class lio{ Public Protect Private Function __constructor(){} } 2.类的实例化 <? php class lio{ //定义 ...