[英]How to add a value to every element inside a list?
value = int(input("Enter the value"))
my_list = [1,2,3,4,5]
如果输入值为 5,我想将 5 添加到 my_list 中期望结果应为[6,7,8,9,10]
每个元素。
这很简单:
value = int(input("Enter the value"))
my_list = [1,2,3,4,5]
new_list = [x+value for x in my_list]
这基本上通过迭代旧列表的元素并向它们添加value
来创建一个新列表。
这种方法称为“列表理解”。 它允许您以简洁的方式创建新列表。 常见的应用是创建新列表,其中每个元素都是应用于另一个列表的每个成员的某些操作的结果,或者创建满足特定条件的那些元素的子序列。 您可以在此处阅读更多相关信息。
有几种方式:
value = int(input("Enter the value"))
my_list = [1, 2, 3, 4, 5]
# Using map()
new_list = list(map(lambda list_value: list_value + value, my_list))
# Using list comprehension
new_list = [list_value + value for list_value in my_list]
或者,如果您使用的是numpy
:
import numpy as np
value = int(input("Enter the value"))
my_list = np.asarray([1, 2, 3, 4, 5]) + value
你可以使用一个简单的for
循环:
for i, e in enumerate(my_list):
my_list[i] = value + e
print(my_list)
输出(对于输入 5):
[6, 7, 8, 9, 10]
或者您可以使用内置函数: map
、 sum
和zip
:
list(map(sum, zip(my_list, [value]*len(my_list))))
或者你可以使用itertools.cycle
from itertools import cycle
list(map(sum, zip(my_list, cycle([value]))))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.