Funções

Uma função é composta basicamente por duas partes:

1def nome_da_função( ):
2
3 bloco de código da função

Podemos entender uma função como:

  • Função é um bloco de código que só é executado quando é chamado.

  • Funções nos ajudam a diminuir repetições tornando o código mais organizado.

  • Função é sempre uma ação de fazer algo.

01.Criando uma função

Para criar uma função usamos o comando def.

Veja o exemplo de como criar e chamar uma função:

1 #Criando uma função chamada parabens
2 def parabens( ):
3
4   #Estabelecendo o bloco de código que a função parabens irá executar
5   print('Parabéns, você criou uma função.')
1#Chamando a função parabéns
2parabens()

Este é o resultado:

>>> Parabéns, você criou uma função.

02.Criando uma função com parâmetros

Quando precisamos que a função seja executada de forma específica é necessário usar:

  • Parâmetro: é a variável que recebe um valor (argumento) para ser usado na função.

  • Argumento: valor atribuído ao parâmetro.

Uma função com parâmetros e argumentos é composta basicamente da seguinte forma:

1def nome_da_função(parametro_01 = argumento_01, parametro_02 = argumento_02):
2
3 bloco de código da função

Veja o exemplo de como criar uma função com parâmetros e argumentos:

1#Criando uma função chamada barra um, com os "parâmetros quantidade" e "caracter" e com os argumentos "40" e "@"
2def barra_01(quantidade=40, caracter='@'):
3
4   #Estabelecendo o bloco de código que a função barra_01 irá executar
5   print(quantidade*caracter)
1#Chamando a função barra_01
2barra_01()

Este é o resultado:

>>> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Warning

Repare que como não passamos nenhum argumento para a função, ela nos devolve os argumentos padrões (default), que neste caso é 40 vezes o símbolo ‘@’.

02.a.Alterando os argumentos de uma função

Pense na função barra_01:

1#Criando uma função chamada barra um, com os "parâmetros quantidade" e "caracter" e com os argumentos "40" e "@"
2def barra_01(quantidade=40, caracter='@'):
3
4   #Estabelecendo o bloco de código que a função barra_01 irá executar
5   print(quantidade*caracter)

Caso deseje alterar a quantidade e o símbolo do caracter, sem precisar toda vez ir onde definiu a função, você pode fazê-lo ao chamar a função.

Veja o exemplo de como alterar os argumentos de uma função na hora de chamá-la:

1#Chamando a função barra_01 e alterando os argumentos para "quantidade = 10" e "caracter = !"
2barra_01(quantidade = 10, caracter = !)

Este é o resultado:

>>> !!!!!!!!!!

03. Variáveis globais e variáveis locais

É importante saber que existem dois tipos de variáveis:

03.a.Variáveis globais

É criada fora de uma função, estrutura de repetição ou condição. Ou seja, podemos acessar o seu valor em qualquer parte do código.

03.b.Variáveis locais

É criada dentro de uma função, estrutura de repetição ou condição. Sendo inicializada (criada) a cada vez que chamamos a função ou seja não podemos acessar o valor fora da função, estrutura de repetição ou condição .

03.c.Veja o exemplo de uma variável global e variável local:

  • Pense no seguinte código:

 1#Criando uma variável global chamada "ano_nascimento"
 2ano_nascimento = 1987
 3
 4#Criando uma função chamada descobrir_idade
 5def descobrir_idade():
 6
 7   #Criando uma variável local chamada "idade"
 8   idade = 2021 - ano_nascimento
 9
10   #Pedindo para estabelecer o valor
11   print('Minha idade é: ', idade)

Note

  • ano_nascimento é uma variável global.

  • idade é uma variável local.

03.c.i.Exemplo variável global

Repare que podemos usar a variável global ano_nascimento fora da função:

1#Imprimindo a variável global chamada "ano_nascimento"
2print(ano_nascimento)

Este é o resultado:

>>> 1987

03.c.ii.Exemplo variável local

Repare que não podemos usar a variável local idade fora da função:

1#Imprimindo a variável local chamada "idade"
2print(idade)

Este é o resultado:

>>> NameError: name 'idade' is not defined

04.Comando return

Em muitos casos, usamos uma função para executar um bloco de código que nos retorne algo, por exemplo o resultado de uma conta. Quando queremos realizar isso, utilizamos o comando return

O comando return é composta basicamente da seguinte maneira:

1def nome_da_função( ):
2
3 bloco de código da função
4
5 return conteúdo desejado

Podemos entender o comando return como:

  • O comando return dentro de uma função, nos retorna algum conteúdo.

Veja o exemplo de como usar o comando return dentro de uma função:

1 #Criando uma função chamada "area_triangulo" com os parâmetros base e altura
2 def area_triangulo(base, altura):
3
4   #Estabelecendo para a função calcular a área do triangulo
5   area = base*altura/2
6
7   #Utilizando o comando return para nos devolver o valor da área
8   return area
1#Chamando a função area_triangulo com os argumentos desejados
2area_triangulo(8, 10)

Este é o resultado:

>>> 40

04.a.Trabalhando com o valor do comando return

Caso você deseje trabalhar com o valor que o comando return devolveu, basta atribuí-lo a uma variável

Veja o exemplo de como trabalhar com o valor do comando return :

Pense na função area_triangulo que vimos acima.

1 #Criando uma variável chamada "resultado" e atribuindo o valor da função "area_triangulo" nela
2 resultado = area_triangulo(8,10)
1 #Imprimindo a variável chamada "resultado"
2 print(resultado)

Este é o resultado:

>>> 40