Python程序替换列表中的元素
在Python中,可以使用列表将多个项目保存在单个变量中。列表是Python中用于存储数据集合的四种内置数据类型之一,另外三种是元组、集合和字典,每种都有其独特的用途。
什么是列表?
使用方括号创建列表。列表是Python中最强大的工具,因为它们不一定是同构的。一个列表中可以包含整数、字符串和对象等数据类型。由于列表是可变的,因此即使在创建后也可以对其进行更改。
Python列表的主要特性之一是能够包含重复的值。这允许我们循环遍历列表的项目并确定每个项目的值。如果该值需要替换,则进行替换。
在本文中,我们将学习使用Python程序替换列表中元素的六种方法。
使用for循环
Python的for循环用于以顺序方式迭代字符串、元组、列表、集合或字典等可迭代对象。因此,我们将在此处使用的for循环将迭代给定的列表并替换列表中的值或元素。例如,我们在列表中取两个元素,例如“咖啡”和“茶”。现在,我们想用“果汁”和“莱姆苏打”替换它们。为了完成这项任务,我们将使用for循环和if条件来替换元素。
算法
首先定义列表。
使用for循环创建一个范围,即要迭代的元素列表。
使用if语句替换元素。
打印输出列表。
示例
在下面的程序中,定义了一个元素列表。然后,对于列表中的每个元素,if语句检查它是否与“咖啡”或“茶”匹配。
如果是,则该元素分别被“果汁”或“莱姆苏打”替换。最后,打印新的列表。
# 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)
算法
首先定义列表。
使用索引号替换值。
打印输出列表。
示例
下面的程序替换列表中的一个元素。原始列表包含“电视”、“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循环。while循环重复for循环的工作。我们首先定义一个值为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”中。
然后,使用列表切片,我们将该项目替换为一个新值。如果我们想用“辐射”替换“复制”,我们必须首先找到“复制”的索引,然后执行列表切片以取出“复制”并将其替换为“辐射”。
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()函数将map对象转换为列表。
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语言替换元素的不同方法。
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP