Olá, boa noite! Para mim não ficou claro a diferença de uma função com parâmetro e um função sem parâmetro.
Se fosse colocada no código apenas "def saudacao = (nome)", não daria no mesmo? Por qual motivo tive que criar uma "função com parâmetro?"
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, boa noite! Para mim não ficou claro a diferença de uma função com parâmetro e um função sem parâmetro.
Se fosse colocada no código apenas "def saudacao = (nome)", não daria no mesmo? Por qual motivo tive que criar uma "função com parâmetro?"
Olá, Matheus. Tudo bem?
O código que você mencionou não funcionaria, pois é como se você estivesse criando uma função como se fosse uma variável, e a forma como uma função é criada é diferente.
Nesse caso, a sua ideia era apenas colocar o nome dentro da função, como a seguir?
def saudacao():
print(nome)Dessa forma, não funcionaria, pois você precisaria ter criado a variável nome fora da função, como uma variável global que atende o código inteiro, ou até mesmo criar dentro da própria função, mas a ideia é ter variáveis usadas para cada tarefa específica.
Nesse caso, a ideia era deixar a função com a tarefa de exibir qualquer nome que enviássemos para ela, de outro trecho do código.
Para que essa função funcionasse, você poderia utilizar o parâmetro, e assim passar o valor do nome por ele:
def saudacao(nome):
print(nome)
nome = 'Maria'
saudacao(nome)Antes a gente não tinha como usar a variável nome, pois a gente não passou ela e nem criou dentro da função.
Além disso, a ideia da função é você executar alguma tarefa que você deseja diversas vezes, sem precisar reescrever o código.
Imagine que você queira exibir outro nome que não seja Matheus, você criaria outra função só pra exibir outro nome? O código ficaria cheio de função, pois teria uma função para cada possível nome.
O parâmetro nos ajuda a evitar isso, pois com ele teremos apenas uma função, que irá exibir qualquer nome que desejamos.
Ou seja, a tarefa da função é exibir o nome. Mas que nome seria esse? Não é tarefa dela determinar, a tarefa dela é somente exibir. Ou seja, quem decide que nome será esse somos nós, por isso temos o parâmetro.
Espero ter ajudado, Matheus. Se tiver mais alguma dúvida, estou à disposição. Bons estudos =)