上QQ阅读APP看书,第一时间看更新
2.1.2 在列表中增、删、改元素
列表中的数据不可能是一成不变的,在表2.1里,我们给出向列表中添加元素的常用方法。
表2.1 向列表里添加元素的常用方法
在如下的AddListDemo.py案例中,我们将通过上述3种方法演示添加元素的操作。
01 languageList=['Python','Java','Go'] 02 languageList.append('C# ') 03 # ['Python', 'Java', 'Go','C# '] 04 print(languageList) 05 idList=[1,2] 06 newIdList=[3,4] 07 idList.extend(newIdList) 08 # [1, 2, 3, 4] 09 print(idList) 10 idList.insert(3,5) 11 # [1, 2, 3, 5, 4] 12 print(idList)
在第2行里,我们通过append方法在languageList列表最后添加了一个C#的元素,从第4行的输出结果可以确认添加成功。在第7行里,我们通过extend方法在idList的尾部添加了newIdList列表里的两个元素,通过第9行的打印语句就能确认这一点。
在第10行里,我们通过insert方法在idList的第3号索引位添加了元素5,添加完成后,之后的元素将顺延,从第12行的输出语句里能看到添加的结果。
我们既可以直接通过索引号来更新列表,可以直接用del方法删除指定索引号的元素,还可以通过remove方法删除第一个出现的指定元素。在如下的DelAndUpdListDemo.py案例中将演示相关做法。
01 languageList=['Python','Java','Go'] 02 languageList[2]='C# ' 03 # ['Python', 'Java', 'C# '] 04 print(languageList) 05 # languageList[5]='Go' # Error 06 idList=[1,2,3,4] 07 del idList[2] 08 # [1, 2, 4] 09 print(idList) 10 # del idList[3] # Error 11 idList.remove(1) 12 # [2, 4] 13 print(idList) 14 # ValueError: list.remove(x): x not in list 15 # idList.remove(100)#
在第2行里,我们直接通过索引号更改了languageList里的元素,请注意这里的索引号依然是从0开始的。从第4行的打印结果能够确认数据已经被更新。如果我们如第5行那样通过不存在的索引号去更新列表,就会出现异常。
在第7行里,我们通过del方法删除了idList里索引号是2的元素,同样之后的元素会向前顺延。如果我们像第10行那样删除时传入一个不存在的索引号,就会出现异常。
在第11行里,我们演示了通过remove删除列表中指定数据的用法。注意,其中的参数1不是索引号,而是待删除的元素。从第13行的打印语句我们能看到remove后的效果。如果在调用remove方法时传入了一个不存在的元素,比如像第15行那样,就会出现异常。