List(列表)
我们之前写的有关序列的操作,都适用于列表,这些方法都是用来更新列表,下面详细说一下更新列表。列表的内容是可变的。可以为整型也可以为字符。
更新列表
元素赋值:赋值语言是最简单的改变列表的方式,例如num=9就是改变列表的方式。
例如:num = [1,2,3,4,5]
num[3]=5 #给索引3处赋值为5
num输出为[1,2,3,5,5]
注意:如果在赋值时对数据类型不能确定,可以使用type()函数
num[1]=a
num输出为[1,'a',3,5,5]
小提示:赋值时的索引不能超出列表的索引范围,否则会报错。
增加元素:由元素赋值可知,不能为超出列表的索引范围赋值。一旦初始化了一个列表,就不能再往这个列表中增加元素了。若需要往列表中增加元素,则需将整个列表中的元素都复制一遍,再添加需要增加的元素。
Python为我们提供了append()方法;这个方法是用于在列表末尾添加新对象的方法。是直接修改原来的列表。语法为list.append(需要添加的对象)。
例如:num=[1,2,3]
num.append(4)
num输出为[1,2,3,4]
删除元素:Python提供了del函数来删除元素,这个函数可以删除一个元素,也可以删除整个列表。
例如:num =[1,2,3]
del num[1] #删除num列表中索引为1位置的数据
num输出为[2,3]
del num #删除整个列表
num输出会报错误--提示num没有定义
分片赋值:看过了单个元素赋值,来看一下多个元素赋值即分片赋值。
例如:
newlist=list('你好')
newlist输出为['你', '好', '呀']
newlist[1:]=list('是谁') #将newlist列表中索引1至最后的元素全部替换为'是谁'
newlist输出为['你', '是', '谁']
注:这里引入了一个list()函数,直接将字符串转换为列表。分片赋值还可以扩充原有的列表长度。
例如:newlist=list('你好呀')
newlist输出为['你','好','呀']
newlist[2:]=list('我是谁')
newlist输出为['你','好','我','是','谁']
还可以利用分片的索引删除某一个元素,此处不再举例。
列表方法
append方法,在列表的末尾添加新对象。
使用方法list.append(要添加的元素)
count方法,统计某个元素在列表中出现的次数。
使用方法list.count(要统计的元素)
extend方法,在列表末尾一次性添加另一个序列。
使用方法list.extend(列表)
index方法,从列表中找出某个元素第一个匹配的索引位置,对于不存在的元素会报错。
使用方法list.index(要查找的元素)
insert方法,从列表中找出某个元素第一个匹配的索引位置,并将要插入的对象插入到哪个索引位置。
使用方法list.insert(索引位置,要插入的元素)
pop方法,移除列表中的一个元素,并返回移除的元素值。默认移除最后一个,但也可以指定要移除的元素。
使用方法list.pop([要移除的元素])
remove方法,移除列表中某个元素的第一个匹配项,不返回移除的元素值。
使用方法list.remove(要移除的元素)
reverse方法,将原来的列表中的元素反向。
使用方法list.reverse()
注:reversed方法返回一个迭代器对象sort方法,对原来的列表进行排序。
使用方法list.sort()
高级sort,如果有参数就按参数的比较方法排序。
使用方法list.sort([key][,reverse])
两个可选参数key和reverse。
注:sorted方法直接获取列表的副本进行排序。
clear方法,用于清空列表。使用方法list.clear()无需参数
copy方法,用于复制列表。使用方法newlist = list.copy()
Tuple(元组)
元组同字符串一样是不能修改的。创建元组的方法:使用逗号分隔一些元素就会自动创建元组。注意括号(1,)这才算是一个元组,如果没有逗号,只能是int类型。
元组的基本操作
访问元组,可以使用下标索引访问元组中的值。
例如:str=('hello',1)
str[1]输出1
修改元组,元组的元素值不能被修改,但可以对元组进行连接组合。
例如:str=('hello',1)
str1=(234,) #这里的,为定义元组。
print(str+str1)#输出为('hello',1,234)
str=str+str1
print(str) #输出为('hello',1,234)
删除元组,元组中的元素值不能被删除,但是可以使用del语句删除整个元组。
例如:str=(234,)
del str
print(str) #输出会报错:str没有定义
元组索引、截取,元组也是序列,所以可以访问元组中指定位置的元素,也可以使用分片来截取索引中的一段元素。
例如:str=('hello',1,234)
str[1:]
输出为(1,234)
元组方法(较常用)
len方法,用于计算元组元素格式。
使用方法len(元组)
max方法,用于返回元组中元素的最大值。
使用方法max(元组)
min方法,用于返回元组中元素的最小值。
使用方法min(元组)
tuple方法,用于将列表转化为元组。
使用方法:元组=tuple(列表)
到底什么是元组的元素不能变!
对于元组来说,元组中可以存放常量值即字符型、整型等,也可以存放序列,而这时序列的地址就相当于元组的元素值,因此这个地址是不可变的,但是与之对应的序列的值是可以改变的。
领取专属 10元无门槛券
私享最新 技术干货