在Python中有六种内建的序列:列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。
1. 通用序列操作
索引:序列中所有元素都是有编号的,索引从0开始递增。使用负数索引时,Python会从右边开始计数(xl[-n:]:获取序列的最后N个元素)
切片:在序列中使用两个索引来作为边界,xl[m:n]的意义是[m, n)区间的内容被重新分配为切片。修改切片的元素不会影响原序列。
切片的步长:xl[m:n:c],c为步长可以是正整数和负数(从右到左提取元素)。
使用一个负数作为步长时,必须让开始点(开始索引)大于结束点。c为整数条件m<n,c为负数条件m>n
相加:将两个序列连接起来。序列相加后,会重新分配内存,修改原来序列不会影响相加后的序列的内容。
相乘:使用数字n乘以一个序列会生成新的序列,在新的序列中原来的序列将被重复n次。
成员判断:in可以判断元素是否属于序列
操作:len()获取序列长度,min()获取列表最小的元素,max()获取列表最大元素
2. 列表
list:将字符串或tuple转换成列表。对于字典的转换则需要:list(dict.keys())将字典的key转换成list,list(dict.values())将字典的值转换成list。
del:删除元素。del list[m:n:c]:删除列表中的一个切片元素,del list[]:删除全部元素
append:用于在列表末尾追加新对象。list.append(序列)
count:用于统计某个元素在列表中出现的次数list.count(元素)
extend:在列表末尾一次性追加另一个序列中的多个值,a.extend(b)注意和append区别:extend方法是修改了被扩展的序列(调用extend方法的序列),而原始的连接操作返回的是一个全新的列表
index:用于从列表中找出某个值第一个匹配项的索引位置,返回下标。
insert:用于将对象插入到列表中。list.insert(n,序列):在第n个位置插入序列或者元素
pop:移除列表中的一个元素(默认是最后一个),并且返回该元素的值。
remove:移除列表中某个值的第一个匹配项。list.remove(元素),删除列表中的第一个匹配的元素
reverse:将列表中的元素反向存放sort:对列表进行排序。list[m:n] = list1:将list1中元素赋值从下标m开始间隔n赋值给list
3. 元组:不可变序列。元组和列表最大的区别在于:元组不能修改。
tuple:通过tuple函数可以将一个序列转换为元组。
由于元组是不可变的,所有没有提供像列表一样的函数,基本元组操作就是创建和访问。
元组作为序列的一种,也支持分片那些地方需要使用元组元组可以在映射(和集合的成员)中作为键(key)使用,而列表不行元组作为很多内建函数和方法的返回值存在
列表和元组的主要区别在于:列表可以修改,元组(不可变)不能。