序列
基本概念
- 列表、元组和字符串都是序列
- 序列的两个主要特点是索引操作符和切片操作符。
- 索引操作符让我们可以从序列中抓取一个特定项目。
- 切片操作符让我们能够获取序列的一个切片,即一部分序列。
- 索引同样可以是负数,位置是从序列尾开始计算的。
- 因此,shoplist[-1]表示序列的最后一个元素,而shoplist[-2]抓取序列的倒数第二个项目
- 切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割。
- 注意这与你使用的索引操作符十分相似。记住数是可选的,而冒号是必须的。
- 切片操作符中的第一个数(冒号之前)表示切片开始的位置,第二个数(冒号之后)表示切片到哪里结束。如果不指定第一个数,Python就从序列首开始。如果没有指定第二个数,则Python会停止在序列尾。
- 注意:返回的序列从开始位置开始,刚好在结束位置之前结束。即开始位置是包含在序列切片中的,而结束位置被排斥在切片外。
- shoplist[1:3]返回从位置1开始,包括位置2,但是停止在位置3的一个序列切片,因此返回一个含有两个项目的切片。shoplist[:]返回整个序列的拷贝。你可以用负数做切片。负数用在从序列尾开始计算的位置。例如,shoplist[:-1]会返回除了最后一个项目外包含所有项目的序列切片
序列的基本操作
len()
:求序列的长度+
:连接两个序列*
:重复序列元素in
:判断元素是否在序列中max()
:返回最大值min()
:返回最小值cmp(tuple1, tuple2)
:比较两个序列值是否相同
元组()
- 元组和列表十分类似,只不过元组和字符串一样是不可变的,即你不能修改元组。
- 元组通过圆括号中用逗号分割的项目定义。
- 元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。
- 创建元组
- 一个空的元组由一对空的圆括号组成,如:
myempty=()
- 含有单个元素的元组,
singleton=(2)
一般的元组
zoo=('wolf', 'elephant', 'penguin') new_zoo=('monkey', 'dolphin', zoo)
- 一个空的元组由一对空的圆括号组成,如:
- 元组操作
- 元组和字符串一样属于序列类型,可通过索引和切片操作。
- 元组值亦不可变