前言
Python中有六种内置序列,其中三种基本序列类型比较常见:列表,元组和字符串。这里将介绍这些序列的通用操作。
大部分序列都可以进行的通用操作,包括索引、切片、相同类型序列的相加、乘法、成员资格、长度、最大值、最小值。在前面一章中介绍过索引、切片、加法和乘法的技术这里将不再过多赘叙,将在这里进行一些补充。
首先是切片的步长技术,当我们截取序列时,不想相隔一个进行截取时可以添加步长设置,每隔几个进行截取(默认步长为1),形式为[ : : ],第一个位置填入截取起始位置,第二个位置填入截止位置,第三个位置填入步长,注意截止区间是一个左闭右开的区间。当然步长可以为负,即从右向左进行截取,但是步长并不支持为0,此时将会报错,
序列相加技术要注意的一点是,只用同种类型的序列才能进行相加,并且返回的类型也为此种类型,不同类型的序列进行相加会报错
成员资格
成员资格指判断一个元素是否包含在序列之中,使用运算符"in"来判断,其会判断左边的元素是否包含在右边的序列之中,之后返回一个布尔值,需要注意的是判断的两种元素的类型必须完全一致
print(5 in [1,2,3,4,5]) #ture
print(5 in "123456") #报错
长度、最小值、最大值和求和
利用函数len(“序列”)可以得到序列的长度,利用函数max(“序列”)和min(“序列”)可以分别得到序列的最大值和最小值,sum(“序列”)可以对序列进行求和,但要注意的是sum函数求和的序列必须全是int类型,而max和min可以是字符串,但他们都不可以对字母进行大小比较或求和
列表
这里我们将讲解列表的相关操作
列表更新
列表可以通过索引获取其中单个的元素,也可以通过索引更新其中的元素,方法和变量赋值一样方便
list1 = [1,2,3,4,5]
print(list1[2])
list1[2] = "hello"
print(list1)
#结果为
#3
#[1,2,"hello",4,5]
从执行的结果我们可以看到一个列表是可以存储不同类型的数据的,但注意更新列表时要注意,更新的列表必须是已有的索引,不能超出对超出列表的索引进行更新数据
增加元素
列表不能通过索引来添加元素,可以使用append方法在列表的最后追加新元素,例如:
list1 = [1,2,3,4,5]
list1.append("hello")
print(list1)
#结果为
#[1,2,3,4,5,"hello"]
值得注意的是append只能在原来的列表上新增一个元素,如果想要新增多个元素就要使用extend,例如:
list1 = [1,2,3,4,5]
list1.append([6,7])
print("append")
print(list1)
print("----------")
list2 = [1,2,3,4,5]
list2.extend([6,7])
print("extend")
print(list2)
打印出的结果为:
append
[1,2,3,4,5,[6,7]]
----------
extend
[1,2,3,4,5,6,7]
自此我们可以看出他们两种不同的效果,append无论后面是单个元素还是一个列表都会把它当成一个新元素追加在原来的列表后面
当然除了两种在列表末尾添加元素的方法,我们还有在列表中间插入的方法,insert方法:
list1 = [1,2,3,4,5]
print