迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

如何在 Python 列表中替换一个元素

作者:迹忆客 最近更新:2023/12/21 浏览次数:

我们可以用多种方式替换 Python 列表中的元素。我们可以使用 Python 列表元素索引、for 循环、映射函数和列表推导方法。

本文将讨论上述方法来查找和替换 Python 列表元素。


用列表索引方法查找和替换 Python 列表元素

让我们以下面的列表为例,将索引 0 处的元素从 5 改为 20。

my_list = [5, 10, 7, 5, 6, 8, 5, 15]

我们将把索引 0 处的元素从 5 改为 20。

示例代码如下。

my_list = [5, 10, 7, 5, 6, 8, 5, 15]
my_list[0] = 20

print(my_list)

输出:

[20, 10, 7, 5, 6, 8, 5, 15]

for 循环方法查找和替换 Python 列表中的元素

我们在这个方法中使用 enumerate() 函数。它返回一个枚举对象,该对象也包含计数器和元素。当我们把 enumerate() 函数和 for 循环结合起来时,它对 enumerate 对象进行迭代,并把索引和元素一起得到。

代码是

my_list = [5, 10, 7, 5, 6, 8, 5, 15]
for index, value in enumerate(my_list):
    if value == 5:
        my_list[index] = 9

print(my_list)

输出:

[9, 10, 7, 9, 6, 8, 9, 15]

用列表推导方法查找和替换 Python List 元素

在此方法中,我们可以通过在旧列表上应用预先定义的条件来生成一个新的列表。

语法是:

my_list = [5, 10, 7, 5, 6, 8, 5, 15]

[9 if value == 5 else value for value in my_list]

print(my_list)

输出:

[9, 10, 7, 9, 6, 8, 9, 15]

map 方法查找并替换 Python 列表元素

本方法用第一个列表项的索引改变第二个列表项的元素。

代码是:

list_1 = [5, 10, 7]
list_2 = [7, 10, 7, 5, 7, 5, 10]

ent = {k: i for i, k in enumerate(list_1)}
result = list(map(ent.get, list_2))

print("list2 after replacement is:", result)

输出:

list2 after replacement is: [2, 1, 2, 0, 2, 0, 1]

结论

  1. 当我们替换列表中的一个元素时,列表索引法是好的。
  2. 当我们根据选择性标准替换一个列表中的多个元素时,列表推导式是正确的选择。
  3. 不鼓励使用循环法,因为它需要更多的执行时间和内存。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:https://www.jiyik.com/tm/xwzj/prolan_8115.html

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便