Python - добавление всех элементов списка через цикл for в пользовательской функции - PullRequest
0 голосов
/ 30 октября 2018

Я новичок здесь, я недавно начал изучать Python, поэтому я хочу создать функцию, которая может суммировать все элементы списка, используя цикл For в функции, ниже то, что я написал:

# Function for sum of all elements of list
def my_num(number):
    count = 0
    for numbers in number:
        count = count + numbers
        # return count
my_list = list(range(1, 2, 3, 4))
print(my_num(my_list))

Это печать - None

Я предполагаю добавить все номера my_list с помощью функции my_num

Заранее спасибо!

1 Ответ

0 голосов
/ 30 октября 2018

В вашем коде нет оператора return в конце функции. Любая функция без оператора return возвращает None.

def my_num(number):
    count = 0
    for num in number:
        count += num
    return count
my_list = list(range(1, 5)) # range(start, end)
print(my_num(my_list)) # -> 10

В качестве альтернативы, Python уже имеет встроенную функцию: sum(), которая возвращает сумму любого списка чисел.

my_list = list(range(1, 5))
print(sum(my_list)) # -> 10

Кроме того, range() принимает только 3 аргумента: start, end, step. Правильный способ получить [1, 2, 3, 4] - это использовать range(1, 5), где 1 включительно, а 5 - исключительно.

...