当前位置:首页 > 编程开发 > Python > 正文内容

python中remove函数的踩坑记录

Codefans3年前 (2021-10-21)Python1333
这篇文章主要给大家介绍了关于python中remove函数的踩坑记录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

摘要:

在python的使用过程中,难免会遇到要移除列表中对象的要求。这时可以使用remove函数。

对于python中的remove()函数,官方文档的解释是:Remove first occurrence of value.大意也就是移除列表中等于指定值的第一个匹配的元素。

语法

list.remove()

参数

obj 参数:从列表中删除的对象的索引

返回值

删除后不会返回值

常见用法:

a = [1,2,3,4],a.remove(1),然后a就是[2,3,4];对于a = [1,1,1,2],其结果也是[1,1,2],这是最基本的用法。

但是对于下面这个:

1
2
3
4
5
6
a = [1,2,3,4]
for i in a:
  a.remove(i)
 
# 结果
a = [2,4]

或者说

1
2
3
4
5
6
7
a = [1,1,1,1,1,2]
for i in a:
  a.remove(1)
 
  
#结果
a = [1,1,2]

是不是跟想象中的不一样,其主要原因如下(^表示当前迭代器位于列表中的位置):

 a = [ 1 , 2 , 3 , 4]

假设此时  

默认情况下只想第一个元素,然后执行a.remove(1),然后下标向后移动,列表因为删除了元素,后面的向前移动,如下:

   a = [ 2 , 3 , 4]

   此时       ^

此时执行a.remove(3),重复上面的移动

   a = [ 2 , 4]

   此时           ^

因为已经到了列表的边界,故结束遍历,并返回`a = [2,4]`。

解决办法:

1
2
3
# 一下为解决办法之一
d = dict(zip(range(len(a)), a))
[v for k, v in d.items() if v != value]

总结:

关于python列表的remove操作涉及了列表下标的移动以及列表中元素的移动,涉及了一些关于数组的知识。其核心问题就是前面所说的。


扫描二维码推送至手机访问。

版权声明:本文由图慧网发布,如需转载请注明出处。

本文链接:http://www.tuh8.com/?id=7

分享给朋友:

“python中remove函数的踩坑记录” 的相关文章

dataframe踩坑笔记(2):表格合并、拼接

dataframe踩坑笔记(2):表格合并、拼接

1. 表格简单合并1.1按行合并(上下合并):import numpy as np df1= pd.DataFrame(np.random.randn(4),columns=["a"])   df2= pd...

Python中 pandas 数据处理常用函数与方法的详细介绍

数据读取和写入pandas.read_csv(filepath_or_buffer, sep=',', header='infer', names=None): 从 csv 文件中读取数据,返回一个 DataFrame 对象。其中 filepath_or_buffer...

python requests库使用详细教程

Python 中的 requests 库是一个简单易用的 HTTP 请求库,支持多种请求方法、多种参数设置、并且使用广泛。本文将详细介绍如何使用 requests 库发送 HTTP 请求。安装使用 pip 命令进行安装:pip install requests导入在编写 Pyth...

python BeautifulSoup4(bs4)使用教程

Python 中的 BeautifulSoup4(通常简称为 bs4)是一个流行的 HTML 解析器,是从 HTML 或 XML 文件中提取数据(或屏蔽 HTML/XML 标记)的一种库。在本文中,我将介绍如何安装、导入和使用 bs4 库。安装要安装 bs4,可以使用 pip 命令:pip ...

Python pandas库159个常用方法使用说明

Pandas库专为数据分析而设计,它是使Python成为强大而高效的数据分析环境的重要因素。一、Pandas数据结构1、import pandas as pdimport numpy as npimport matplotlib.pyplot as plt2、S1=pd.Series([‘a’,’b...

Python调用JS的四种方法

Python调用JS的四种方法1、PyExecJS 方法1)、安装PyExecJS2)、 `PyExecJS 示例`2、PyV8 方法1)、安装PyV82)、 `PyV8 示例`3、js2py 方法1)、安装js2py2)、 `js2py 示例`4、selenium 方法1)、安装selenium2...