本篇内容
- 列表讲解、切片、内置方法
- 元组
- 字典
一、列表讲解、切片、内置方法
列表 [] 方式:a = ['Kobe','leborn','cart','curry']
切片:
- 顾头不顾尾 a = [1:3] Kobe,Lebron
- 什么都不加即取到最后一个元素 a = [1:]
- 取到倒数第二个值 a =[1:-1]
- 步长为2的取值 a = [1:-1:2]
列表的增删改
- 增:a.append('west')/a.insert(1,'west')
- 删: a.remove('Kobe') 删除后不能返回到删除的值
a.pop(1) 通过索引值删除,并且删除后返回到删除的值
del a[0] or del a del既可以删除内容,也可以删除对象
- 改:a[1] = ['Hadon']或a[1:3] = ['james','wede']
列表的内置方法
1、 x.extend() 对列表扩展
a.extend(b)
a=[11,22,76,56] a.extend(['lary','xiyang']) ==> li=[11,22,76,56,'lary','xiyang']
2、x.index() 找到某值的下标
3、 x.insert() 插入
4、 x.remove(y) 删除第一个出现的y值
5、 x.reverse() 把列表中的元素倒过来排序,并且对x进行修改
6、 x.sort() 对数字排序从小到大,对字符串也有顺序,按ASSIC码进行排序
二、元组
元组是一个元素不可变的容器,这也就意味着,通过他们做hash算法总是得到一个值
- 一般创建方法 atuple = (1,2,3,'string',['name','sex'],('Changer','man'),7-9j)
- 单元素元组创建 atuple = (1,) 或 atuple = ('aaaaa',) 在最后要加一个逗号才是tuple类型,如果不加逗号则分别是int,str类型
- 创建一个空元组 atuple = tuple()
- 统计元素在元组中的个数 atuple.index('xx')或atuple.index(1)
- 元组的切片 atuple[5][0]==>name atuple[2:5]==>2,3,string
- 元组的更新 atuple = atuple+(1,2)==>atuple = (1,2,3,'string',['name','sex'],('Changer','man'),7-9j,1,2)
- 元组整体的合并 atuple = atuple,(1,2)==>atuple = (1,2,3,'string',['name','sex'],('Changer','man'),7-9j,(1,2))
- 删除元组 del atuple 不能删除元组中一个单独的元素
- 元组的操作符:
成员关系操作符 in ,not in
重复操作符+,* atuple = (1,2,3,4)+(5,6,7,8,9)==>(1, 2, 3, 4, 5, 6, 7, 8, 9)
逻辑操作符 只针对元组的第一个元素做逻辑运算 (4,2) > (3,4)==>True (1,2) > (3,1)==>False
- 更新不可变的元组时,先转换成列表,在调取列表方法更新 1.atuple=(1,2,3) 2.atuple = list(atuple) 3.atuple = tuple(atuple)
三、字典
字典是Python中唯一的映射类型,采用键值对的形式存储数据,key必须是可哈希的,其键可以是数字、字符串、元组,这种结构类型也称之为映射。
直接创建字典 d={'one':1,'two':2,'three':3}
通过dict创建字典 items=[('one',1),('two',2),('three',3),('four',4)],d=dict(items) ==> { 'four': 4, 'three': 3, 'two': 2, 'one': 1}
通过关键字创建字典 d=dict(one=1,two=2,three=3)
字典的格式化字符串 d={'one':1,'two':2,'three':3,'four':4},print "three is %(three)s." %d ==> three is 3
字典方法:d.clear()清空字典元素
例:
3.1.2与3.1.1唯一不同的是在对字典d的清空处理上,3.1.1将d关联到一个新的空字典上,这种方式对字典dd是没有影响的,所以在字典d被置空后,字典dd里面的值仍旧没有变化。但是在3.1.2中clear方法清空字典d中的内容,clear是一个原地操作的方法,使得d中的内容全部被置空,这样dd所指向的空间也被置空。
3.2 copy函数:返回一个具有相同键值的新字典。字典的内置函数:
fromkeys函数:使用给定的键建立新的字典,键默认对应的值为None,d=dict.fromkeys(['one','two','three'],'unknow')==>{'three': 'unknow', 'two': 'unknow', 'one': 'unknow'}
get函数:访问字典成员,注:get函数可以访问字典中不存在的键,当该键不存在是返回None
has_key函数:检查字典中是否含有给出的键,返回布尔值
items和iteritems函数:items将所有的字典项以列表方式返回,列表中项来自(键,值),iteritems与items作用相似,但是返回的是一个迭代器对象而不是列表
keys和iterkeys:keys将字典中的键以列表形式返回,iterkeys返回键的迭代器
pop函数:删除字典中对应的键
popitem函数:移出字典中的项
setdefault函数:类似于get方法,获取与给定键相关联的值,也可以在字典中不包含给定键的情况下设定相应的键值
update函数:用一个字典更新另外一个字典
values和itervalues函数:values以列表的形式返回字典中的值,itervalues返回值得迭代器,由于在字典中值不是唯一的,所以列表中可以包含重复的元素