python:remove方法的使用,remove、pop、del三者的区别 | 您所在的位置:网站首页 › Cbackspace和del都可以删除选定的字符 › python:remove方法的使用,remove、pop、del三者的区别 |
remove方法
描述
删除列表中的给定的对象 语法list.remove() 参数obj 参数(可选择性插入)obj的作用是要从列表中删除的对象的索引 使用如:list.remove(obj = list[0]) 返回值remove方法删除后不会返回值 实例 list = [1, 2, 3, 4, 5] list.remove(1) print (list) #输出结果为:[2, 3, 4, 5] list.remove(5) print(list) #输出结果为:[2, 3, 4]remove()括号内为要删除的元素,如果多个元素一样,默认删除第一个: x = ['a', 'b', 'a', 'c', 'd'] x.remove('a') print x #输出结果为['b', 'a', 'c', 'd']remove()删除多个相同元素,会出现如下情况: a=['a','b','c','d'] b=['c','d','e','f'] for x in a: if x in b: a.remove(x) print (a) #输出结果为[‘a’, ‘b’ ,’d’]这是为什么? 当x='c’时,此时满足if条件语句,执行if下的语句:a.remove(x),也就是将’c’元素从a数组中删除。 删除之后,remove函数并没有执行结束。而是将a数组中索引号大于删除元素索引号的所有元素依次前一位。 此时,x指向a[2],a数组当前的状态为:[‘a’,‘b’,‘d’],a[2]中存储的为元素’d’。 remove函数返回后,继续执行for循环,x指向数组的下一个索引。 因此导致了’d’元素没有与数组b进行比较。 后续,将程序进行了如下修改: a=['a','b','c','d'] c=['a','b','c','d'] b=['c','d','e','f'] for x in a: if x in b: c.remove(x) print (c) #输出结果为[‘a’, ‘b’] remove,pop,del三者的区别1. 用remove()方法删除指定元素 2. 利用del[索引数] 函数删除指定索引数的元素 a = [3, 2, 2, 1] del a[1] print a #结果为[3, 2, 1]del还可以删除指定范围内的值 a = [3,2,2,1] del a[1,3] print a #结果[3]del还可以删除整个列表 del a3. 利用pop()方法弹出元素,当()内无索引数时默认弹出最后一个元素 del是python语句,而不是列表方法,无法通过list来调用 x = ['a', 'b', 'c', 'd'] x.pop(2) print x #结果为['a', 'b', 'd'] |
CopyRight 2018-2019 实验室设备网 版权所有 |