Article image
Mateus Ramos
Mateus Ramos11/01/2024 13:26
Compartilhe

Criar e def(inir) as suas próprias funções em Python

  • #Python

Python é uma linguagem de programação considerada um coringa, com ela é possível fazer aplicações web, criar modelos de ciência de dados e também é possível criar aplicativos desktop.

E falando sobre a versatilidade do Python, aprenda de uma vez como criar as suas próprias funções usando a palavra-chave def

Uma Incrível maneira de reutilizar o mesmo código e também tornar mais limpo e organizado suas aplicações.

Mas por que usar def?

Pyhton possui muitas bibliotecas, mas em um cenário específico de um problema, será necessário criar suas próprias funções. Com a função def, é possível manter um código organizado, mais legível e mais simples de fazer a manutenção, e o mais importante... Evitar a duplicidade de código!

Todo Desenvolvedor Python precisa dominar a criação de funções, para saber mais, consulte a documentação oficial abaixo:

https://docs.python.org/pt-br/3/tutorial/controlflow.html#defining-functions

Entendendo a função def

image

Imagine que você é contratado para criar as ações desse robô e é passado as seguintes tarefas:

  • Armazenar um nome;
  • Armazenar dois números;
  • Criar uma saudação;
  • Somar números.

Abaixo está a sintaxe básica para criação de uma função:

def nome_funcao():
codigo
return

Criar uma função é muito simples, onde esta nome_funcao será o nome que daremos para a função e onde está codigo. será onde colocaremos as instruções.

Continuando no nosso problema

Criaremos a primeira função para armazenar um nome:

def guardar_nome():
  nome = input("Digite seu nome: ")
  return nome

Já aprendemos a colocar um nome na nossa função, e é possível notar que após o return tem uma variável, isso significa que ao executar a função, o resultado será essa variável nome.

def guardar_numeros():
  num1 = input("Digite o primeiro numero: ")
  num2 = input("Digite o segundo numero: ")
  return num1, num2

A função guardar_numero segue o mesmo padrão com um nome após a palavra def, o código que recebe os dois números digitados pelo usuário, mas dessa vez o resultado será duas variáveis.

def saudacao(nome):
  print("Olá, seja bem-vindo:", nome)
  return

A função saudação tem uma particularidade, dentro dos parênteses temos uma variável, mas por que? O nome desse valor dentro dos parênteses é chamado de parâmetro. As duas outras funções resultavam em uma função, já a função saudacao necessita de uma variável para ser executada.

def soma(num1, num2):
  print("A soma é:", int(num1) + int(num2))
  return

E por fim, a última função que soma os números.

"Algo deu errado... Executo meu programa e nada acontece"

Já ensinamos nosso robô as 4 funções, mas não basta apenas ensinar, eu preciso pedir para ele executar.

image

Toda vez que eu "chamar" qualquer função, será executado o bloco de código dentro dela, o nome disso é chamado de instanciar a função. Então depois que criarmos e escrever os códigos das funções, podemos criar a função principal que executa todas elas e um comando que executa a função principal.

def main():
# Chama a função guardar_nome para obter o nome
nome_usuario = guardar_nome()

# Chama a função saudacao e passa o nome obtido como argumento
saudacao(nome_usuario)

# Chama a função guardar_numeros para obter dois números
numeros = guardar_numeros()

# Chama a função soma e passa os números obtidos como argumentos
soma(numeros[0], numeros[1])

if __name__ == "__main__":
  main()

"Agora sim Mateus, está tudo funcionando certinho! 😊"

Código Completo

def guardar_nome():
nome = input("Digite seu nome: ")
return nome

def guardar_numeros():
num1 = input("Digite o primeiro numero: ")
num2 = input("Digite o segundo numero: ")
return num1, num2

def saudacao(nome):
print("Olá, seja bem-vindo:", nome)
return

def soma(num1, num2):
print("A soma é:", int(num1) + int(num2))
return

def main():
# Chama a função guardar_nome para obter o nome
nome_usuario = guardar_nome()

# Chama a função saudacao e passa o nome obtido como argumento
saudacao(nome_usuario)

# Chama a função guardar_numeros para obter dois números
numeros = guardar_numeros()

# Chama a função soma e passa os números obtidos como argumentos
soma(numeros[0], numeros[1])

if __name__ == "__main__":
main()

Revisão

  • Aprendemos o porque de usar funções e os benefícios que contém em usar essa técnica
  • A sintaxe de uma função
  • Como retornar valores de uma função
  • Passar parâmetros para um função
  • E o que é e como instanciar uma função

Espero que tenha ficado claro como criar suas próprias funções e que esse artigo possa contribuir para seus novos projetos!

Compartilhe
Comentários (2)
Mateus Ramos
Mateus Ramos - 12/01/2024 08:50

Muito obrigado Kauã

Kauã Fabricio
Kauã Fabricio - 11/01/2024 18:09

Gostei do artigo, Mateus! Simples e direto ao ponto. Python é incrível!