Passando múltiplos parâmetros para uma função em Python
Suponha que temos uma função que aceita vários parâmetros numéricos:
def func(num1, num2):
return num1 + num2
print(func1(2, 3))
Ao chamar a função, os números fornecidos 2
e 3 serão atribuídos às variáveis num1
e num2 respectivamente.
Mas há casos em que é necessário passar
muitos parâmetros na chamada de uma função, cuja
quantidade não é conhecida antecipadamente. Em Python,
é possível definir apenas uma variável na declaração
da função que posteriormente se tornará
uma tupla de todos os parâmetros passados na chamada.
Para isso, antes do nome dessa variável, deve-se
usar o símbolo *. É convenção chamar essa variável
de args, mas pode-se
dar a ela qualquer outro nome. E para acessar
todos os parâmetros, basta referenciar essa
variável no corpo da função, mas agora sem
o *:
def func(*args):
return args
print(func(1, 2, 3)) # exibirá (1, 2, 3)
Em seguida, é possível realizar quaisquer outras operações com os parâmetros obtidos. Vamos calcular a soma deles:
def func(*args):
return sum(args)
print(func(1, 2, 3)) # exibirá 6
Escreva uma função que aceite um número ilimitado de nomes de usuário como parâmetros e os exiba no console na forma de uma tupla.