在 Python 整數列表中每個元素新增 K


在資料分析中,有時需要向 Python 列表中的每個元素新增一些值來判斷新場景的結果。這有助於測試資料集中在不同值下的行為,從而構建能夠處理這些場景的模型或演算法。在本文中,我們將瞭解如何處理此需求。

使用列表推導式

列表推導式是處理列表的一種常見方法,其中我們遍歷列表的每個元素。在下面的示例中,我們使用簡單的 for 迴圈將相同的數字新增到列表的每個元素。

示例

 即時演示

orig_list = [5, 6, 7, 4, 10]
print ("The given list is : " + str(orig_list))
# Use list comprehension
new_list = [n + 5 for n in orig_list]
# printing result
print ("After adding 5 to each element to list : " + str(new_list))

輸出

執行以上程式碼將得到以下結果:

The given list is : [5, 6, 7, 4, 10]
After adding 5 to each element to list : [10, 11, 12, 9, 15]

使用 lambda 和 map

map 和 add 方法也可以得到相同的結果。Lambda 函式對固定次數的迭代重複相同的操作,而 map 用於在所有 lambda 迭代完成後捕獲結果。

示例

 即時演示

orig_list = [5, 6, 7, 4, 10]
print ("The given list is : " + str(orig_list))
#Using map() + lambda
new_list= list(map(lambda m : m + 3, orig_list))
print ("After adding i to each element to list : " + str(new_list))

輸出

執行以上程式碼將得到以下結果:

The given list is : [5, 6, 7, 4, 10]
After adding i to each element to list : [8, 9, 10, 7, 13]

使用 map() 和 add()

我們可以使用 add 方法與 map 一起代替 lambda 運算子。在下面的示例中,我們建立另一個列表,其元素數量與列表的長度相同,並且包含需要新增的數字。然後我們應用 map 方法。

示例

 即時演示

import operator
orig_list = [5, 6, 7, 4, 10]
print ("The given list is : " + str(orig_list))
# initializing new list
list_with_k_value = [9] * len(orig_list)
# using map() + operator.add
new_list = list(map(operator.add, orig_list, list_with_k_value))
print ("After adding i2 to each element to list : " + str(new_list))

輸出

執行以上程式碼將得到以下結果:

The given list is : [5, 6, 7, 4, 10]
After adding i2 to each element to list : [14, 15, 16, 13, 19]

更新於: 2020年2月18日

846 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告