序列是python开发(http://www.maiziedu.com/course/python-px/)中最基本的数据结构,在python程序中包括6种内建的序列,分别是:列表、元组、字符串、Unicode字符串、buffer对象和xrange对象。下面就逐一给大家揭晓python通用序列的操作方法。
1 索引
所有程序员都知道,索引下标从零开始,Python也是这样, 索引0指向序列中第一个元素。
但是与C++相比,Python又增加了负索引,最后1个元素的索引是-1,从右至左是-2,-3 …
字符串字面值直接可以索引:
>>>'Hello'[1]
e
2 分片
分片通过冒号隔开两个索引实现。
>>>str = 'write.blog.csdn.net'
>>>str[6,10]
blog
这里需要注意的是:第一个索引是要提取的第一个元素的编号,而最后的索引是分片之后剩余部分的第一个元素的编号。
优雅的捷径:
已知一序列,访问后三个元素
>>>number = [1,2,3,4,5,6,7,8,9,10]
法一:
>>>number[7:10][8,9,10]
法二(失败):
>>>number[-3:-1][8,9]
>>>number[-3:0][]
说明:分片中最左边的索引比它右边的晚出现在序列中,结果就是一个空序列。
法三:
>>>number[-3:][8,9,10]
说明:如果分片所得部分包括序列结尾的元素,那么,最后一个索引置空就可以。
第一个索引为空:
>>>number[:3][1,2,3]
两个索引都置空,复制整个序列:
>>>number[:][1,2,3,4,5,6,7,8,9,10]
三个参数的分片:
第三个参数为步长
>>>number[::4][1,5,9]
3 序列相加
不同类型的序列不要相加
>>>[1,2,3]+[4,5,6][1,2,3,4,5,6]
4 序列乘法
数字x乘以一个序列,产生的新序列将原来的序列重复x次:
>>>'Python'*5'PythonPythonPythonPythonPython'
5 成员资格
检查一个值是否在序列中。in运算符,返回True或False
>>>permissions = 'rw'
>>>'w' in permissionsTrue
6 长度、最小值、最大值
内建len min max用处特别大。
这里跟C++没有什么区别,就不再赘述了。
1 索引
所有程序员都知道,索引下标从零开始,Python也是这样, 索引0指向序列中第一个元素。
但是与C++相比,Python又增加了负索引,最后1个元素的索引是-1,从右至左是-2,-3 …
字符串字面值直接可以索引:
>>>'Hello'[1]
e
2 分片
分片通过冒号隔开两个索引实现。
>>>str = 'write.blog.csdn.net'
>>>str[6,10]
blog
这里需要注意的是:第一个索引是要提取的第一个元素的编号,而最后的索引是分片之后剩余部分的第一个元素的编号。
优雅的捷径:
已知一序列,访问后三个元素
>>>number = [1,2,3,4,5,6,7,8,9,10]
法一:
>>>number[7:10][8,9,10]
法二(失败):
>>>number[-3:-1][8,9]
>>>number[-3:0][]
说明:分片中最左边的索引比它右边的晚出现在序列中,结果就是一个空序列。
法三:
>>>number[-3:][8,9,10]
说明:如果分片所得部分包括序列结尾的元素,那么,最后一个索引置空就可以。
第一个索引为空:
>>>number[:3][1,2,3]
两个索引都置空,复制整个序列:
>>>number[:][1,2,3,4,5,6,7,8,9,10]
三个参数的分片:
第三个参数为步长
>>>number[::4][1,5,9]
3 序列相加
不同类型的序列不要相加
>>>[1,2,3]+[4,5,6][1,2,3,4,5,6]
4 序列乘法
数字x乘以一个序列,产生的新序列将原来的序列重复x次:
>>>'Python'*5'PythonPythonPythonPythonPython'
5 成员资格
检查一个值是否在序列中。in运算符,返回True或False
>>>permissions = 'rw'
>>>'w' in permissionsTrue
6 长度、最小值、最大值
内建len min max用处特别大。
这里跟C++没有什么区别,就不再赘述了。