一、批量删除列表中不同位置的元素
列表是python中经常用到的一种数据结构,因python提供了很多方法对其增、删、查、改,故使用起来比较灵活,下面就介绍下如何快速删除列表中多个元素的方法。
二、具体用法
例如:待处理列表为['香蕉','橘子','火龙果','梨','苹果','柚子','csdn'] 已知删除元素的索引为[1,2,6]
lis = ['香蕉','橘子','火龙果','梨','苹果','柚子','csdn']
index_list = [1,2,6]
index_list.reverse()
for i in index_list:
lis.pop(i)
print('删除后lis的值:%s' %lis)
删除后lis的值:['香蕉', '梨', '苹果', '柚子']
- 方法二
借助enumerate()方法,代码如下:
lis = ['香蕉','橘子','火龙果','梨','苹果','柚子','csdn']
index_list = [1,2,6]
lis = [n for i, n in enumerate(lis) if i not in index_list]
print('删除后lis的值:%s' %lis)
删除后lis的值:['香蕉', '梨', '苹果', '柚子']
补充:简单介绍下enumerate()使用
- 含义:对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值
lis = ['香蕉','橘子','火龙果','梨','苹果','柚子','csdn']
for i, n in enumerate(lis):
print(i,n)
0 香蕉
1 橘子
2 火龙果
3 梨
4 苹果
5 柚子
6 csdn
|