Как добавить значение для каждого элемента в списке? - PullRequest
2 голосов
/ 10 марта 2020
value = int(input("Enter the value"))
my_list = [1,2,3,4,5]

Если входное значение равно 5, я хочу добавить 5 к каждому элементу в my_list, где ожидаемый результат должен быть [6,7,8,9,10].

Ответы [ 3 ]

2 голосов
/ 10 марта 2020

Существует несколько способов:

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
2 голосов
/ 10 марта 2020

Это очень просто:

value = int(input("Enter the value"))
my_list = [1,2,3,4,5]
new_list = [x+value for x in my_list]

Это в основном создает новый список путем перебора элементов старого и добавления к ним value.

Этот метод называется " понимание списка ". Это позволяет создавать новые списки в сжатой форме. Обычные приложения - создавать новые списки, в которых каждый элемент является результатом некоторых операций, примененных к каждому члену другого списка, или создавать подпоследовательность тех элементов, которые удовлетворяют определенному условию. Подробнее об этом можно прочитать здесь .

0 голосов
/ 10 марта 2020

вы можете использовать простой for l oop:

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]))))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...