首頁 >後端開發 >Python教學 >Python程式:取代列表中的元素

Python程式:取代列表中的元素

WBOY
WBOY轉載
2023-08-25 18:48:437207瀏覽

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 语言替换元素的五种不同方法。

以上是Python程式:取代列表中的元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除