Функция Python, которая получает неизвестное количество аргументов - PullRequest
2 голосов
/ 25 марта 2019

Я хотел бы написать функцию, которая получает неизвестное количество аргументов, умножает их и печатает результат.

Я использую * args, но получаю тот же результат, если в качестве параметра я использую кортеж.

# Using *args
def mult(*args):
    ans = 1
    for i in args:
        ans *= i
    print(ans)

# using a tuple
def multT(t):
    ans = 1
    for i in t:
        ans *= i
    print(ans)


mult(1,2,3,4)
multT((1,2,3,4))

Обе функции печатают 24. Есть ли основания предпочитать использовать * args, а не кортеж?Если в этом случае это не имеет значения, есть ли другие случаи, когда мне пришлось бы использовать * args, а не кортеж?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...