在 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]
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP