Trabalhando com Funções em Python – Mega Tutorial Python

Apertem os cintos, porque neste artigo nós aprenderemos como trabalhar com funções em Python. Nós já aprendemos sobre a história da linguagem, assim como já vimos como trabalhar com variáveis e os tipos de dados disponíveis na linguagem.

Aliás, nós já aprendemos também quais são os operadores disponíveis na linguagem.

Portanto, agora é chegada a hora de aprender a reutilizar um pouco o nosso código criando funções.

funções em python - harry potter python

Mega Tutorial Python

  1. Introdução
  2. Primeiros passos e o Hello World
  3. Tipos de Dados em Python
  4. Operadores e Expressões
  5. Trabalhando com Funções em Python (Este artigo)
  6. Estrutura de Dados em Python
  7. Trabalhando com Módulos em Python
  8. Controle de Fluxo em Python
  9. O Python e o While Else
  10. Objetos em Python
  11. Representação Interna dos Objetos
  12. Entrada e Saída em Python
  13. Trabalhando com Exceções em Python
  14. Qual o Próximo Passo?
  15. Começando com Flask Framework
  16. Templates no Flask Framework
  17. Flask com Angular 6

O que são Funções em Python

Em primeiro lugar, vamos definir um pouco as coisas.

Então vamos lá: funções não são nada além de blocos de código reutilizáveis.

Imagina que você possa dar nome para um determinado agrupamento de código, e depois, chamá-lo pelo nome, no lugar de rescrever todo o código novamente.

Aliás, você já tem uma certa intimidade com funções em Python, mesmo que você não saiba ainda.

Por acaso você se lembra de utilizarmos coisas como bin(10) ? Pois bem, a função bin já está pré definida pra gente, e ela faz parte de um grupo de funções chamadas built-in functions.

Built-in Functions em Python

python software foundation

Abaixo segue uma tabela contendo todas as funções em Python pré definidas.

abs() dict() help() min() setattr()
all() dir() hex() next() slice()
any() divmod() id() object() sorted()
ascii() enumerate() input() oct() staticmethod()
bin() eval() int() open() str()
bool() exec() isinstance() ord() sum()
bytearray() filter() issubclass() pow() super()
bytes() float() iter() print() tuple()
callable() format() len() property() type()
chr() frozenset() list() range() vars()
classmethod() getattr() locals() repr() zip()
compile() globals() map() reversed() __import__()
complex() hasattr() max() round()
delattr() hash() memoryview() set()

Como Criar Funções Em Python

Agora que já sabemos o que é uma função, além de termos para consulta uma lista com todas as built-in functions disponíveis na linguagem, é chegada a hora de aprendermos como criar uma função em Python.

Funções em Python são definidas através da palavra reservada def.

Após o def , nós adicionamos uma identificação para esta função, seguida de de parenteses.

Como Criar Funções em Python com Parâmetros

Agora que nós já sabemos como criar funções em Python, vamos dar uma olhada em como receber parâmetros nelas.


Note que os parâmetros de uma função são definidos dentro do parêntesis. Não é preciso se preocupar com o tipo da variável como acontece em outras linguagens de programação.

Isso acontece pois os tipos dos parâmetros são inferidos a partir do valor informado, assim como ocorre com a definição de variáveis.

Voltando para  nossa função somar, olha o que acontece ao passar vários tipos de dados para ela:


Note que em Python 3, nós podemos “tipar” as variáveis, o retorno de uma função, e até mesmo os tipos de uma lista.

Mas isso acontece apenas para fins declarativos, pois apesar da possibilidade de definir os tipos, não é realizada nenhum tipo de verificação para confirmar que ele é de fato do tipo informado.

Parâmetros com Valores Padrões

É possível definir parâmetros de funções com valores padrões, ou opcionais.

No caso de um parâmetro com valor padrão, a pessoa que chamar esta função não será obrigada a informar nenhum valor.

Porém, caso seja passado algum valor, ele sobrescreverá o valor pré definido.

Número Indefinido de Parâmetros (VarArgs)

É possível criar funções com um número não definido de parâmetros.

Aliás, é possível esperar um número não conhecido de parâmetros de duas formas.

É possível esperar um número aleatório de valores, e um número aleatório de chave/valor.

São os famosos *args  e **kwargs . Lembre-se que eles não precisam ter necessariamente esses nomes.

Retornando Valores com Funções em Python

Até agora nós criamos funções que apenas realizam uma ação, porém não retornam nenhum valor.

Para retornarmos um valor com funções em Python, basta utilizar a palavra return , seguida do valor a ser retornado.

Variáveis Locais nas Funções em Python

Uma coisa que é importante se atentar é ao escopo das variáveis. É possível tanto criar variáveis locais dentro das funções, quanto utilizar variáveis globais.

Porém, é possível criar uma variável local com o mesmo nome de uma variável global. Ao fazer isso, você precisa lembra-se que estará alterando os valores da variável de escopo local, e não a variável de escopo global.

Conclusão

Enfim, provavelmente este assunto você verá em praticamente qualquer lugar daqui para frente.

Isso porque funções são um recurso fundamental na construção de qualquer programa!

E ai, o que você achou? Gostou? Ficou com alguma dúvida?

Não deixe de comentar abaixo caso tenha ficado qualquer dúvida em relação ao post! Sua opinião também é muito bem vinda!

Um grande abraço, e até o próximo artigo!

No Responses

  1. Pingback: Mega Tutorial Python - O Guia Definitivo 29 de novembro de 2018
  2. Pingback: Tipos de Dados em Python - Mega Tutorial Python 4 de dezembro de 2018
  3. Pingback: Estrutura de Dados em Python - Mega Tutorial Python 11 de dezembro de 2018
  4. Pingback: Operadores e Expressões em Python 11 de dezembro de 2018
  5. Pingback: Trabalhando com Módulos em Python 11 de dezembro de 2018
  6. Pingback: Objetos em Python - Mega Tutorial Python 12 de dezembro de 2018
  7. Pingback: Controle de Fluxo em Python - Mega Tutorial Python 12 de dezembro de 2018

Leave a Reply