python列表元素的基本操作
1.列表元素的增加
python提供三种方法增加元素,append,extend,insert。
区别:例 list3=[1,10,100,1000,10000]
A. list3.append(2)
print(list3) out:[1,10,100,1000,10000,2]
#在末尾添加数字2 append是列表所特有的方法,其他常见的对象是没有这个方法的,该方法是往列表的尾部增加元素,而且每次只能增加一个元素。如果需要一次增加多个元素,该方法无法实现,只能使用列表的extend方法。
B. list3.extend([20,200,2000,20000])
print(list3) out: [1,10,100,1000,10000,2,20,200,2000,20000]
#使用extend方法往列表尾部增加多个元素时,一定要将多个元素捆绑为列表传递给该方法,即使只有一个元素,也需要以别表的形式传递
C. list3.insert(2,11)
print(list3) #在10后面增加11 list3=[1,10,11,100,1000,10000,2,20,200,2000,20000]
list3.insert(6,['a','b','c'])
print(list3) #在10000后面添加,['a','b','c'] out:[1,10,11,100,1000,10000,['a','b','c'],2,20,200,2000,20000]
#insert方法可以在列表的指定位置插入新值,该方法需要传递两个参数:一个是索引(或下标)参数,如上面的2,是指在列表元素的第三个位置插入:另一个参数是具体插入的值,既可以是一个常量,也可以是一个列表,如果是列表,就是以嵌套列表的形式插入。
2.列表元素的删除
列表的删除有三种方法,分别是pop,remove和clear。
#例题接上面的 也就是list3=[1,10,11,100,1000,10000,['a','b','c'],2,20,200,2000,20000]
list3.pop() #删除列表中最后一个元素
print(list3)
list3.pop(2) #删除list3中11这个元素
#pop方法每次只能删除单个元素,默认删除末尾位置的元素,也可以删除指定位置的元素
list3.remove(['a','b','c'])
print(list3) # out [1,10,100,1000,10000,2,20,200,2000]
#remove方法提供了删除指定值的功能,该功能非常棒,但是它只能删除首次出现的指定值。如果你的列表元素特别多,通过pop方法删除指定位置的元素就显得非常的笨拙,因为你需要数出删除值的具体位置,而使用remove方法就很方便。
list3.clear()
#clear从字面理解的意思就是清空的意思。如上结果所示,通过clear方法返回的是一个空列表。
3.列表元素的修改
如果列表中元素值存在错误如何修改?不幸的是对于列表来说,没有具体的方法可言,但可以使用“取而代之”的思想实现元素的修改。
例如:list4=['洗衣机','冰响']
print(list4[1])
list4[1]='冰箱'
如上,通过取而改之的方法,把错误的内容变更过来了。当然,除了上面介绍的列表元素增加和删除所涉及的方法外,还有其他的方法,如排序,计数,查询位置,逆转等
list5 = [7,3,9,11,4,6,10,3,7,4,4,3,6,3]
print(list5.count(3)) #计算列表中3的个数
print(list5.index(6)) #找出元素6所在的位置
list5.reverse() #列表元素的颠倒
list5.sort(reverse=Ture) #按倒序排列列表中的元素
4.列表元素的查找(索引)
列表值有一个index()方法,可以传入一个值,如果该值存在于列表中,就返回它的下标。如果该值不在列表中,Python就报ValueError。
如:
spam = ['hello','hi','howdy','heyas']
spam.index('hello') 输出的是:0
5.列表元素的排序
可以用sort()方法将列表中的值排序,sort方法有一个关键字用来控制正反reverse,默认是从小到大或者从字母表的顺序排列的;
如 :spam.sort() 默认正序
spam.sort(reverse= True) 反序