本文实例讲述了Python编程之序列操作。分享给大家供大家参考,具体如下:
#coding=utf8
'''''
序列类型有着相同的访问模式:它的每一个元素可以通过指定一个偏移量的方式得到。
可以通过切片操作一次获得多个元素。
序列的下标偏移量是从0开始到总元素数减一结束。
标准类型操作符一般都能试用与所有的序列类型。
序列类型操作符:
---------------------------------------------------------------------------
序列操作符 作用
---------------------------------------------------------------------------
seq[ind] 获得下标为ind的元素
seq[ind1:ind2] 获得下标从ind1到ind2间的元素集合
seq * expr 序列重复expr次
seq1+seq2 连接序列seq1和seq2
obj in seq 判断obj元素是否包含在seq中
obj not in seq 判断obj元素是否不包含在seq中
---------------------------------------------------------------------------
切片操作符在Python中的原型是:[start:stop:step]
即:[开始索引:结束索引:步长值]
开始索引:同其它语言一样,从0开始。序列从左向右方向中,第一个值的索引为0,最后一个为-1
结束索引:切片操作符将取到该索引为止,不包含该索引的值。
步长值:默认是一个接着一个切取,如果为2,则表示进行隔一取一操作。步长值为正时表示从左向右取,如果为负,则表示从右向左取。步长值不能为0。
切片索引的语法比简单的单一元素索引灵活的多。开始和结束索引值可以超过字符串的长度。
函数原型:range(start, end, scan):
参数含义:start:计数从start开始。默认是从0开始。例如range(5)等价于range(0, 5);
end:计数到end结束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
scan:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
序列类型转换工厂函数:
-----------------------------------------------------------------------------------------------------------------------
函数 含义
-----------------------------------------------------------------------------------------------------------------------
list(iter) 把可迭代对象转换为列表
str(obj) 把obj对象转换成字符串(对象的字符串表示法)
unicode(obj) 把对象转换成Unicode字符串(使用默认编码)
basestring() 抽象工厂函数,是str和unicode的父类,不能实例化不能调用
tuple(iter) 把一个可迭代对象转换成一个元组对象
-----------------------------------------------------------------------------------------------------------------------
序列类型可用的内建函数:
-----------------------------------------------------------------------------------------------------------------------
函数名 功能
-----------------------------------------------------------------------------------------------------------------------
enumerate(iter) 接受可迭代对象作为参数,返回一个enumerate对象,该对象生成
由iter每个元素的index值和item值组成的元组。
len(seq) 返回seq的长度
max(iter,key=None) or
max(arg0,arg1....,key=None) 返回iter或(arg0,arg1,...)中的最大值,如果指定key,key必须是
一个可以传给sort()方法的,用于比较的回调函数
min(iter,key=None) or
min(arg0,arg1....,key=None) 返回iter或(arg0,arg1,...)中的最小值,如果指定key,key必须是
一个可以传给sort()方法的,用于比较的回调函数
reversed(seq) 接受一个序列作为参数,返回一个以逆序访问的迭代器
sorted(iter,func=None,
key=None,reverse=False) 接受一个可迭代对象作为参数,返回一个有序的列表;可选参数func,key
和reverse的含义跟list.sort()内建函数的参数含义一样。
sum(seq,init=0) 返回seq和可选参数init的总和,其效果等同于reduce(operator.add,seq,init)
zip([it0,it1,...itN]) 返回一个列表,其第一个元素是it0,it1,...这些元素的第一个元素组成一个元组,
第二个...类推
-----------------------------------------------------------------------------------------------------------------------
'''
class sequenceClass(object):
def __init__(self):
'''''定义个整数序列表'''
self.intSeq=[1,2,5,8,95,456,236,458,95,62,