Funções - Python
As funções representam blocos de código que executam uma tarefa específica e podem ser reutilizadas em outras partes do programa. Já utilizamos funções em temas anteriores, como a função print()
def nome_da_funcao(parametros_opcionais):
instrucoes
A definição de uma função começa com a palavra-chave def
Exemplo de uma função simples:
def say_hello():
print("Hello")
A função acima chama-se say_hello
Note que todas as instruções da função devem estar corretamente indentadas. Veja o exemplo abaixo:
def say_hello():
print("Hello")
print("Bye")
No exemplo acima, o código print("Bye")
say_hello
Para chamar uma função, basta escrever o nome da função seguido de parênteses, passando ou não os valores para os parâmetros, se necessário:
nome_da_funcao(parametros_opcionais)
Por exemplo, podemos definir e chamar a função say_hello
def say_hello(): # definição da função say_hello
print("Hello")
say_hello() # chamada da função say_hello
say_hello()
say_hello()
Neste caso, a função say_hello
Hello Hello Hello
Note que a função precisa ser definida antes de ser chamada.
Se a função possuir apenas uma instrução, você pode colocá-la na mesma linha da definição:
def say_hello(): print("Hello")
say_hello()
Definindo e chamando várias funções
Da mesma forma, podemos definir e executar várias funções. Veja o exemplo:
def say_hello():
print("Hello")
def say_goodbye():
print("Goodbye")
say_hello()
say_goodbye()
A saída no console será:
Hello Goodbye
Funções Locais
Uma função pode ser definida dentro de outra função, o que chamamos de função local. Essas funções só podem ser usadas dentro da função em que foram definidas. Veja o exemplo:
def print_messages():
# definição de funções locais
def say_hello():
print("Hello")
def say_goodbye():
print("Goodbye")
# chamando as funções locais
say_hello()
say_goodbye()
# chamando a função print_messages
print_messages()
# say_hello() # fora da função print_messages, say_hello não está disponível
Neste caso, as funções say_hello
say_goodbye
print_messages