4.3 列表的函数

列表还有很多可使用的函数:
函数名说明示例
append(n)在列表末尾添加元素
a=[1,3,5,7]
a.append(5)
print(a) #将打印[1,3,5,7,5]
insert(i,n)在下标i前面添加元素n
a=[1,3,5,7]
a.insert(1,6)
print(a) #将打印[1,6,3,5,7]
clear()删除列表所有元素
a.clear()
count()计算某值在列表中出现的次数
a=[1,3,5,7,5]
n=a.count(5)
print(n) #将打印2,5出现了2次
index()查找元素出现的第一个下标a=[1,3,5,7,5]
n=a.index(5)
print(n) #将打印2,第一个5出现在下标2

n=a.index(5,3) #从下标3开始查找元素5
print(n) #将打印4,下标3后的第一个5出现在下标4

pop()删除指定位置的元素并返回,如果没有参数则删除最后一个元素
a=[1,3,5,7,5]
n=a.pop()#删除列表最后一个元素,并把删除的元素赋值给n
print(n) #将打印5
print(a) #将打印[1,3,5,7]
remove()从列表中删除指定的值,只删除第一个
a=[1,3,5,7,5]
a.remove(5)
print(a) #将打印[1,3,7,5]
sort()对列表进行排序
a=[1,3,5,7,4,2]
a.sort()
print(a) #将打印[1,2,3,4,5,7]
reverse()反置列表
a=[1,3,5,7,4,2]
a.reverse()
print(a) #将打印[2,4,7,5,3,1]
copy()拷贝一分列表的复制品a=[1,3,5,7,4,2]
b=a.copy()
print(b) #将打印[1,3,5,7,4,2]
extend()将另一个列表拼接在列表后a=[1,3,5]
b=[22,33,44]
a.extend(b)
print(a) #将打印[1,3,5,22,33,44]
in判断元素是否在集合里a=[1,3,5]
print( 3 in a) #打印True
print( 9 in a) #打印False
del删除某项
list = ["apple", "banana", "cherry","apple"]
del list[0] #删掉第一项 apple
print (list) #打印["banana", "cherry","apple"]
关于copy函数,有一点需要说明,可能有人会觉得,为什么不可以用a=b?
因为a=b实际上a和b指向同一个列表,如果a修改了列表,b也改了。用copy的话,就是创造了一个副本了。下面是使用赋值操作符的例子,可以看到,这样操作实际上a和b都指向同一个列表。
a=[1,3,5,7,4,2]
b=a
a[0]=9
b[1]=18
print(a) #将打印[9,18,5,7,4,2]
print(b) #将打印[9,18,5,7,4,2]
接下来使用copy函数,这样a列表和b列表就是两个列表,互相独立了。
a=[1,3,5,7,4,2]
b=a.copy()
a[0]=9
b[1]=18
print(a) #将打印[9,3,5,7,4,2]
print(b) #将打印[1,18,5,7,4,2]


in不是函数,而是一个操作符,用来判断某元素是否存在于列表:
a=[2,3,56,98,1,23,56,67]
print(34 in a) #打印False,列表a并没有34
print(3 in a) #打印True,列表a有3
一般是这么使用的:
#一般是这么使用,x的值可能运行的时候才可能知道,例如x是键盘输入的
if x in a:
   #其他代码