卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章16333本站已运行3317

Python程序:替换列表中的元素

Python程序:替换列表中的元素

在Python中,可以使用列表将多个项目保存在单个变量中。 Python 中用于存储数据集合的四种内置数据类型之一是列表,其他三种是元组、集合和字典,每种类型都有独特的用途。

什么是列表?

方括号用于构建列表。 Python 中最有效的工具是列表,因为它们不一定是同类的。像整数、字符串和对象这样的数据类型都可以在一个列表中找到。由于列表是可变的,因此即使在创建列表之后也可以对其进行更改。

Python 列表包含重复值的能力是其主要功能之一。这允许我们循环遍历列表的项目并确定每个项目的值。如果该值必须被替换,我们就会这样做。

在本文中,我们将学习使用 python 程序替换列表中元素的六种方法。

使用 For 循环

Python 的 for 循环用于按顺序迭代字符串、元组、列表、集合或字典等可迭代对象。因此,我们将在这里使用 for 循环,它将迭代给定列表并替换列表中的值或元素。例如,我们在列表中选取两个元素,例如“咖啡”和“茶”。现在,我们想用“果汁”和“酸橙汽水”代替它们。为了完成任务,我们将使用 for 循环和 if 条件来替换元素。

算法

  • 首先定义列表。

  • 使用 for 循环创建一个范围,该范围是要迭代的元素列表。

  • 使用if语句,替换元素。

  • 在输出中打印列表。

示例

在下面的程序中,定义了一个元素列表。然后,对于列表中的每个元素,if 语句检查它是否与“Coffee”或“Tea”匹配。

如果是这样,该元素将分别替换为“果汁”或“酸橙汽水”。最后,打印新列表。

# First define a list of elements
list_1 = ['Coffee', 'Sting', 'Maza', 'Tea', 'Tea']
for i in range(len(list_1)):
   
   # if statement for replacing elements
   if list_1[i] == 'Coffee':
      list_1[i] = 'Fruit juice'
   # if statement for replacing elements
      if list_1[i] == 'Tea':
         list_1[i] = 'Lime soda'
print(list_1)

输出

['Fruit juice', 'Sting', 'Maza', 'Lime soda', 'Lime soda']

使用列表索引

可以使用索引来访问列表的条目。在 Python 中替换列表中的元素最简单、最直接的方法就是使用它。利用索引 0,我们可以更改列表中的第一项。

在下面的示例中,新值是应替换列表中先前值的值,索引是我们要更改的项目的索引。

语法

list_1[index]= Replaced value
(Replaced value= new value)

算法

  • 首先定义列表。

  • 使用索引号替换该值。

  • 在输出中打印列表。

示例

以下程序替换列表中的元素。最初的列表包括“TV”、“STD”和“WIFI”。打印完整列表后,第二个元素“STD”将替换为值“手机”。

# first define a list of elements
list_1 = ['Television', 'STD', 'WIFI']

# replacing elements using index
list_1[1]= 'Mobile phone'
print(list_1)

输出

['Television', 'Mobile phone', 'WIFI']

使用 While 循环

要替换列表中的值,我们也可以使用 while 循环。 for 循环的工作由 while 循环重复。我们定义一个值为 0 的变量,并首先在 while 循环中遍历列表。如果值与我们希望更改的值匹配,则旧值将被替换。

算法

  • 首先定义列表。

  • 定义一个变量。

  • 应用 while 循环。

  • 如果变量值与列表中的值匹配,它将替换该元素。

  • 在输出中打印列表。

示例

在下面的程序中,创建了一个包含四个元素的列表。 while 循环迭代列表中的项目,如果某个项目等于“VIVO”,它将被替换为“OPPO”。然后打印修改后的列表。

# first define a list
list_1 = ['REALME', 'REDME', 'APPLE', 'VIVO']
i = 3
while i < len(list_1):

   # replace VIVO with OPPO from the list
   if list_1[i] == 'VIVO':
      list_1[i] = 'OPPO'
   i += 1
print(list_1)

输出

['REALME', 'REDME', 'APPLE', 'OPPO']

使用列表切片

在 Python 中,您必须对列表进行切片才能访问其元素的特定子集。使用冒号(一种简单的切片运算符)是实现此目的的一种方法 (:)。借助该运算符,可以声明步骤以及切片的起点和终点。从原始列表中,列表切片会生成一个新列表。

语法

list_1 = list_1[: index]+[‘N_V’]+list_1[index+1:]
 *(N_V= new value)

算法

  • 首先定义列表

  • 下一步是查找替换元素的索引

  • 使用列表切片替换元素。

  • 在输出中打印列表。

示例

在这里,Python 为我们提供了对列表进行切片的选项。由于切片,我们可以访问列表的一些组件。切片允许我们替换列表内的元素。我们首先找到要替换的变量索引并将其存储在变量“i”中。

然后,使用列表切片,我们将该项目替换为新值。如果我们想用“Radiation”替换“Replication”,首先要确定“Replication”的索引,然后进行列表切片,取出“Replication”并用“Radiation”替换。

list_1 = ['Heat', 'Replication', 'Induction', 'Conduction', 'Precipitation']
i = list_1.index('Replication')
list_1 = list_1[:i]+['Radiation']+list_1[i+1:]
print(list_1)

输出

['Heat', 'Radiation', 'Induction', 'Conduction', 'Precipitation']

使用 Lambda 函数

Python Lambda 函数的匿名性质表明它们缺少名称。众所周知,标准 Python 函数是使用 def 关键字定义的。与此类似,Python 使用 lambda 关键字来定义匿名函数。

无论参数数量如何,此函数中都只会计算并返回一个表达式。

Lambda 函数可以用在需要函数对象的任何地方。必须始终牢记 lambda 函数在语法上仅限于单个表达式这一事实。

语法

list_1=list(map(lambda x: x.replace(‘O_V’,’N_V’),list_1))

算法

  • 定义一个列表。

  • 使用 lambda 和 map 函数替换值。

  • 打印列表作为输出。

示例

在这里,为了使用这种方式替换列表中的元素,我们使用 lambda 和 map 函数。 Python 有一个名为 map() 的内置方法,它允许您在不使用循环语句的情况下循环遍历列表。

作为替换值的要求,我们在此处提供了一个表达式。在这里,在 lambda 函数中,我们将“复制”替换为“辐射”。然后使用 list() 函数将地图对象转换为列表。

list_1 = ['Heat', 'Replication', 'Induction', 'Conduction', 'Precipitation']
list_1 = list(map(lambda x: x.replace('Replication', 'Radiation'), list_1))
print(list_1)

输出

['Heat', 'Radiation', 'Induction', 'Conduction', 'Precipitation']

结论

在本文中,我们简要解释了使用 python 语言替换元素的五种不同方法。

卓越飞翔博客
上一篇: C++在嵌入式系统开发中的软件测试与调试功能实现技巧
下一篇: 如何解决C++语法错误:'expected initializer before '<' token'?
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏