Jak dodać liczbę do każdego elementu w Pythonie? [duplikować]

Sep 19 2020

Jak dodać liczbę do mojego elementu?

powiedzmy, że chcę dodać 10 do każdego elementu w mojej tablicy

Chcę, aby moje dane wejściowe to [1, 2, 3, 4, 5], a dane wyjściowe [11,12,13,14,15]

To jest to, co do tej pory wymyśliłem

def func(z):
        numbers = [1, 2, 3, 4,5]
        num = 10

    
        for i in z:
            numbers.append(i + num)
            i = numbers[-2:]
            return i

Wyświetla 5,20 zamiast 14 i 15.

Odpowiedzi

10 jrmylow Sep 19 2020 at 06:37

Korzystanie ze zrozumienia list to szybki, zwarty sposób na uzyskanie żądanej odpowiedzi. Jest to przydatne narzędzie do nauki lepszego pisania w Pythonie.

number_list = [1, 2, 3, 4, 5]

def add_num_to_each(num, number_list)
    return [ii + num for ii in number_list]

print(add_num_to_each(10, number_list))
>>> [11, 12, 13, 14, 15]
3 MaranSowthri Sep 19 2020 at 06:36

Możesz to zrobić w jednej linii z mapą,

output_list = list(map(lambda x: x + 10, numbers))

Tutaj „liczby” to lista danych wejściowych.

3 AnjalyVijayan Sep 19 2020 at 06:49
numbers = [1, 2, 3, 4,5]

result = [item+10 for item in numbers]
2 ASLAN Sep 19 2020 at 06:36
import numpy as np
arr = np.array([1,2,3,4,5])
print(arr+10)

Korzystanie z numpybiblioteki to mądry wybór, ponieważ skraca czas potrzebny na wykonanie obliczeń wektorowych w porównaniu z iteracją przez pętle.

2 Wilfredo Sep 19 2020 at 06:43

Możesz używać map.

def addTen(n):
    return n+10

numbers = [1, 2, 3, 4, 5]
result = map(addTen, numbers)
print(list(result))
     

https://www.geeksforgeeks.org/python-map-function/