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

python中remove函数的踩坑记录

Codefans3年前 (2021-10-21)Python1316
这篇文章主要给大家介绍了关于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/index.php?mod=mall&act=view&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...

pandas 利用to_excel一次生成多个sheet到一个文件中

在 Pandas 的 to_excel 方法中,可以通过传递参数 sheet_name 来指定生成的 Excel 中的工作表的名称。如果需要生成多个工作表,可以在 sheet_name 中传递一个列表,其中的每个元素即为每个工作表的名称。例如,以下代码生成了一个包含两个工作表的 Excel 文件:i...

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

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

Python requests库中几个常用方法的使用示例

GET请求GET请求是requests库中最常用的请求方法,它用于获取指定URL的资源。以下是一个GET请求的示例:import requests url = 'https://www.baidu.com' response = ...

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 ...