列表的操作
在字符串中我们提到了索引,分片,相加,和数字类型里的乘法等都适用于列表.在列表中还有许多有意思的操作,下面我们来看一下.
元素的赋值
之前我们就学过给变量名赋值(a='dfsdf'),在列表中通过编号标记某个特定位置的元素,并可以对该位置的函数重新赋值.
a = [1,2,3,4,5,6]
a[1]=3
>>>a = [1,3,3,4,5,6]
我们可以对列表里的元素赋不同类型的值.如果编号大于列表长度就会报错.
增加元素
append()
当我们需要增加元素的时候该怎么整呢?别着急,列表有个append()方法能满足你,append()方法可以在列表的尾部增加一个元素.
list.append(obj)
append()方法不是简单的在列表后边增加一个元素并返回一个新列表,它是直接修改原列表.
insert()
insert()方法主要是用于将对象插入列表中的指定位置.
list.inster(index,obj)#index代表对象,obj代表要插入的位置.
extend()
extend()方法用于默认在列表末尾一次性追加另一个列表中的多个值
list.extend(seq) #seq代表需要加入的列表
extend()方法会改变原来的列表,调用方法后会新生产一个列表,同切片赋值一样.
a = ['hello']
b = ['world']
print(a + b)
a.extend(b)
二者结果都一样.但是前者不会修改原始变量.
删除元素
学习了增加当然要学习删除啊,列表的删除方法有四种:
pop()
pop()方法是按位置删除,并且能返回被删除的那个元素.
list.pop(1)#删掉列表中位置是1的元素.
del
del方法可以按位置删除,也可以按切片删除,但是没有返回值.
del list[1]
del list[1:3]
del list#在内存级别删除整个列表
remove()
remove()方法是按照元素去删除.
list.remove('a')
clear()
clear()清空列表内的内容并保存空列表
list.clear()
查
列表中可以查找列表内的元素,一般是通过切片去查,或者通过循环去查.
list[:]#切片和索引
for i in list:
print(i)#通过循环去查
当然还有一些方法:
len()
len()方法是查询列表中总个数的方法.
len(list) #返回的是list的元素个数
count()
count()方法是用于统计某个元素在列表中出现次数的方法.
list.count(obj)#obj需要查找的元素
index()
index()方法是用于从列表中找出某一个值第一个匹配索引位置.
list.index(obj) #obj代表查找的对象
改
列表的改一般都是通过索引和切片来完成的.
list[]='obj'#先把列表原有的内容清空,把新内容迭代添加
list[:2] =[...] #按照切片加步长,删除几个添加几个
list[::]=
列表的其他方法:
list.sort()#从小到大排序
list.sort(reverse=Ture)#从大到小排序
list.reverse()#反转
sort()方法还有更高级的玩法,
list.sort(key=)
key可以指定按什么排序,例如key=len就是按照字符串的长度来排序
copy()
copy()方法是用于复制列表,
list.copy()
元组
元组与类表相似,但是元组中的元素不能修改,但是能进行切片,访问,连接,删除操作.
访问元组
通过下角标索引访问元组中的值
a =('hello','word')
print(a[0])
>>>>hello
修改元组
元组中的元素是不能修改的,但是可以连接组合
a =('hello')
b = ('world')
a+b = c
print(c)
>>>('hello','word')
删除元组
元组中的元素是不能被删除的但是可以用del把整个元组都删掉
del tuple