Como chamar uma função em Python: o guia definitivo

As funções são um conceito essencial na programação que permite gerenciar e reutilizar blocos de código. Saber como chamar uma função em Python é uma habilidade chave para aprender.

Neste tutorial, você aprenderá os fundamentos da chamada de funções, juntamente com algumas dicas para escrever um código eficiente que seja mais fácil de entender.

As funções de domínio não apenas o ajudarão a criar um código mais versátil, mas também simplificarão seu processo de programação e melhorarão sua eficiência geral como desenvolvedor.

As funções têm os mesmos princípios subjacentes e, depois de dominá-las em Python, você poderá expandir sua compreensão das funções em comparação com outras linguagens de programação como Java, R, JavaScript, PHP etc.

Como chamar uma função em Python: o guia definitivo

Índice

O que é uma Função?

Uma função em Python permite criar trechos de código reutilizáveis ​​que podem ser chamados em todo o programa, simplificando o código e melhorando a legibilidade. Ele executa uma tarefa específica ou um conjunto de tarefas e pode ser chamado várias vezes em um programa. 

Definindo uma função em Python

Existem duas categorias principais de funções em Python:

  • Funções definidas pelo usuário: Funções que um programador define para evitar a repetição do código
  • Funções integradas : funções que são definidas por outra pessoa e podem ser usadas em seu código após a instalação dos pacotes necessários

Esta seção do tutorial do Python se concentra nas funções definidas pelo usuário. Você vai aprender:

  • Como definir uma função em Python
  • A sintaxe da função
  • Como usar parâmetros e argumentos

Sintaxe da Função

A def palavra-chave, seguida pelo nome da função e parênteses, permite definir uma função em Python. O corpo da função é recuado e contém o código a ser executado quando a função é chamada. Um exemplo de uma função básica em Python é dado abaixo:

def saudação(): print("Olá, mundo!") saudação()

A def palavra-chave define uma nova função com o nome greet. A terceira linha de código invoca a função, que executa o código dentro da função.

Como chamar uma função em Python: o guia definitivo

A printlinha no código acima também é uma função. No entanto, se você estiver trabalhando em um ambiente Python 2, ele será definido como uma instrução. Mais tarde, no Python 3, foi alterado de instrução para função.

Parâmetros e Argumentos

Os parâmetros são os espaços reservados na definição da função, enquanto os argumentos são os valores passados ​​ao chamar a função.

Para especificar parâmetros, inclua-os entre parênteses da definição da função, separados por vírgulas se houver vários parâmetros. Ao chamar uma função, você fornece os valores de entrada chamados argumentos. O exemplo a seguir demonstra a definição de uma função que recebe dois parâmetros:

def add_numbers(a, b): return a+b

A return instrução no corpo da função retorna a soma dos dois argumentos passados ​​para ela. Você pode pensar nisso como uma calculadora, onde você insere valores e obtém o resultado desejado em retorno.

Depois de definir a função, podemos chamá-la com argumentos de nossa escolha.

add_numbers(3, 5)

Como chamar uma função em Python: o guia definitivo

O argumento dos kwargs

kwargs é a abreviação de “argumentos de palavra-chave” em Python. Ele permite estender a flexibilidade de uma função, permitindo que o chamador especifique qualquer número de argumentos de palavra-chave ao chamar a função. Os argumentos de palavra-chave são passados ​​como um dicionário para a função.

Em uma definição de função, você pode usar a **sintaxe de asterisco duplo antes do nome do parâmetro para aceitar argumentos de palavra-chave.

def my_function(**kwargs): para chave, valor em kwargs.items(): print(f"{key} = {value}") my_function(a=1, b=2, c=3)

Neste exemplo, kwargs será um dicionário contendo os argumentos de palavra-chave passados ​​para a função. A saída é mostrada na imagem abaixo:

Como chamar uma função em Python: o guia definitivo

Chamando uma Função

Chamar uma função significa executar o código dentro do corpo da função. Existem quatro tipos de chamadas de função em Python:

  • Chamada de função básica
  • Chamando com Argumentos Posicionais
  • Chamada com argumentos de palavra-chave

Chamada de função básica

Uma chamada de função básica invoca a função sem passar nenhum argumento para a função. Depois de definir uma função, você pode chamá-la usando seu nome seguido de parênteses.

Se a função não receber nenhum argumento, os parênteses estarão vazios. O código abaixo é um exemplo de uma função básica.

def welcome_message(): print("Bem-vindo ao LuckyTemplates!") welcome_message()

A execução do código acima fornece a seguinte saída:

Como chamar uma função em Python: o guia definitivo

Argumentos Posicionais

Os argumentos posicionais são o tipo de argumento mais comum e são passados ​​para a função na mesma ordem em que são especificados. Veja a seguir um exemplo de chamada de função com argumentos posicionais:

def welcome_message(name): print(f"Bem-vindo ao LuckyTemplates, {name}!") welcome_message("John")

No exemplo acima, a welcome_message()função recebe um argumento, name. Ao chamar esta função com o argumento John, ela imprimirá a mensagem ao lado do nome.

O código acima fornece a seguinte saída:

Como chamar uma função em Python: o guia definitivo

Argumentos de palavras-chave

Outra maneira de passar argumentos para uma função é usando argumentos de palavra-chave. Os argumentos de palavra-chave permitem que você especifique o nome do parâmetro junto com seu valor, tornando o código mais legível e reduzindo a chance de passar argumentos na ordem errada. 

O exemplo abaixo usa argumentos de palavra-chave para chamar a welcome_messagefunção:

def welcome_message(name, message='Bem-vindo ao LuckyTemplates!'): print(message, name) welcome_message(name='Alice', message='Bom dia')

Neste exemplo, definimos uma função welcome_message()que possui dois parâmetros, name, e message. O parâmetro message tem um argumento padrão de Welcome to LuckyTemplates!Ao chamar a função, usamos argumentos de palavra-chave para passar o valor John, resultando na saídaWelcome to LuckyTemplates! John.

Como chamar uma função em Python: o guia definitivo

Valores de retorno

Ao trabalhar com funções, muitas vezes você desejará retornar o resultado das operações dentro do corpo de sua função. Os valores de retorno permitem que uma função envie um resultado de volta ao chamador. Ao entender como trabalhar com valores de retorno únicos e múltiplos, você pode aprimorar a funcionalidade de seus programas Python.

Valor de retorno único

Uma única função de valor de retorno retorna um valor das operações em uma função.

Um exemplo de uma única função de valor de retorno é dado abaixo:

def get_greeting(nome): return "Olá, " + nome + "!" saudação = get_greeting("Alice") print(saudação)

No exemplo acima, a função get_greetingrecebe um nome conforme seu argumento de função o compila e retorna uma saudação personalizada. O valor de retorno é armazenado na variável saudação e impresso no console.

Como chamar uma função em Python: o guia definitivo

Múltiplos Valores de Retorno

Às vezes, você será solicitado a retornar mais de um valor de uma função em Python. Para conseguir isso, você pode usar uma tupla ou uma lista para agrupar os valores de retorno.

A seguir está um exemplo de função de múltiplos valores de retorno na linguagem de programação Python.

def get_name_and_age(): return ("João", 30) nome, idade = get_name_and_age() print(nome) print(idade)

Como chamar uma função em Python: o guia definitivo

Neste exemplo, get_name_and_ageé uma função que retorna uma tupla com dois valores: a name e an age.

Você também pode retornar uma lista de valores de uma função em Python . A função abaixo demonstra um valor de retorno de lista de uma função.

def calcular_áreas(altura, largura): return [altura * largura, (altura * largura) / 2] área, área_triângulo = calcular_áreas(10, 5) imprimir(área) imprimir(área_triângulo)

Como chamar uma função em Python: o guia definitivo

Nesse caso, a função calculate_areasrecebe dois argumentos, height, e width, e retorna uma lista contendo a área de um retângulo e a área de um triângulo.

Passando funções do Python como argumentos

Python permite que você passe funções como argumentos para outras funções. Quando uma função aceita outra função como argumento, ela é chamada de função de ordem superior.

O código abaixo é um exemplo de passagem de uma função para outra função em Python:

def square(x): return x * x def double(x): return x * 2 def apply_func(func, x): return func(x) result = apply_func(square, 5)

Como chamar uma função em Python: o guia definitivo

Funções aninhadas

Funções aninhadas são funções definidas dentro de outra função, também conhecidas como funções internas. Isso pode ser útil ao criar encerramentos e código modular. 

Para criar uma função aninhada, basta definir uma função dentro de outra função:

def outer_function(x, y): def inner_function(z): return x + y + z resultado = inner_function(3) return result # Chame a função externa print(outer_function(1, 2))

No exemplo acima, a inner_function é definida dentro da outer_function. A função interna tem acesso às variáveis ​​da função externa, permitindo realizar operações sobre elas.

Como chamar uma função em Python: o guia definitivo

Funções Lambda

As funções Lambda, também conhecidas como funções anônimas, são uma maneira de criar pequenas funções de uso único em Python. Em projetos de ciência de dados, você frequentemente trabalhará com funções do Lambda para criar estruturas de dados e pipelines eficientes.

Para criar uma função lambda, você pode usar a palavra-chave lambda seguida por uma lista de argumentos, dois pontos e, em seguida, uma expressão. A expressão é o que a função lambda retornará quando for chamada. Veja a seguir um exemplo de função lambda em Python:

add = lambda a, b: a + b resultado = add(3, 4) print(resultado) # Saída: 7

No exemplo acima, criamos uma função lambda que recebe dois argumentos ( a e b) e retorna a soma deles. Atribuímos essa função lambda a uma variável chamada add.

Como chamar uma função em Python: o guia definitivo

Lambda pode ser útil nos seguintes cenários:

  • Como argumentos para funções de ordem superior como map(), filter() e sorted().
  • Como funções-chave ao classificar listas ou dicionários.

O exemplo a seguir demonstra o uso da função de ordem superior filter() com lambda:

números = [1, 2, 3, 4, 5, 6, 7, 8, 9] números pares = list(filter(lambda x: x % 2 == 0, números)) print(números_pares) # Saída: [2, 4, 6, 8]


Neste exemplo, usamos uma função lambda para definir os critérios de filtragem para a função filter(). A função lambda verifica se um número é par e a função filter() retorna uma nova lista contendo apenas os números pares.

Como chamar uma função em Python: o guia definitivo

Para ver um exemplo de como as funções podem ser úteis em diferentes cenários de ciência de dados, assista ao vídeo abaixo:

Recursão

Recursão é uma técnica de programação em que uma função chama a si mesma. Essa pode ser uma maneira útil de resolver problemas complexos, dividindo-os em subproblemas menores e idênticos.

Ao criar uma função recursiva, você precisa ter duas coisas em mente: o caso base e o caso recursivo. 

  • O caso base é a condição que interrompe a recursão
  • O caso recursivo é onde a função chama a si mesma. O caso recursivo atua como um iterador para a função

O exemplo a seguir demonstra funções recursivas em Python:

def fatorial(n): se n == 1: retorna 1 retorna n * fatorial(n - 1) fatorial(5)

Neste exemplo, o caso base é quando n == 1, e a função retorna 1. O caso recursivo ocorre quando n não é igual a 1, e a função chama a si mesma com n - 1.

Como chamar uma função em Python: o guia definitivo

Erros comuns e solução de problemas

Se você for um programador iniciante, frequentemente encontrará erros ao implementar funções como funções recursivas e lambda. As seções a seguir destacam alguns erros comuns e dicas de solução de problemas para ajudá-lo a resolvê-los com eficiência.

1. TypeError: missing a required argument : Este erro ocorre quando você não fornece o número correto de argumentos que a função espera.

def my_function(fname, lname): print(fname, lname) # Chamada correta my_function("John", "Doe") # Gerará um erro my_function("John")

Como chamar uma função em Python: o guia definitivo

Para corrigir esse erro, certifique-se de passar o número correto de argumentos para sua função.

2. TypeError: tipo de operando não suportado . Este erro pode ocorrer quando você está tentando usar um operador com tipos incompatíveis.

def add_number(a, b): return a + b # Resultado correto da chamada = add_number(5, 3) print(result) # Gerará um erro devido a argumentos incorretos result = add_number("5", 3) print(result)

Como chamar uma função em Python: o guia definitivo

Para corrigir esse erro, verifique se suas funções estão lidando com os tipos de dados corretos e considere usar conversão de tipo, se necessário

3. NameError: nome 'function_name' não está definido : Este erro sugere que a função não foi definida antes de ser chamada. 

# Ordem correta def greet(): print("Olá!") greet() # Ordem incorreta adeus() def adeus(): print("Adeus!")

Como chamar uma função em Python: o guia definitivo

Para corrigir esse erro, certifique-se de que sua função esteja definida corretamente e que você a chame após sua definição.

Conclusão

Para recapitular e ajudá-lo a solidificar seu entendimento, os pontos a seguir resumem os principais aspectos da chamada de funções em Python:

  • Para chamar uma função, use o nome da função seguido de parênteses (por exemplo, function_name()).
  • Se a função receber argumentos, inclua-os entre parênteses (por exemplo, function_name(arg1, arg2)).
  • Você pode criar suas próprias funções usando a palavra-chave def, definindo o escopo da função e quaisquer argumentos necessários.
  • Ao chamar uma função que retorna um valor, você pode atribuir o resultado a uma variável para uso posterior (por exemplo, result = function_name(args)).

Leave a Comment

Colunas calculadas no SharePoint | Uma visão geral

Colunas calculadas no SharePoint | Uma visão geral

Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.

Atributos pré-atentivos: como isso pode afetar seu relatório

Atributos pré-atentivos: como isso pode afetar seu relatório

Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.

Variáveis ​​e expressões dentro do editor do Power Query

Variáveis ​​e expressões dentro do editor do Power Query

Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

Como salvar e carregar um arquivo RDS em R

Como salvar e carregar um arquivo RDS em R

Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.