Como chamar uma função em Python (Exemplo)
O que é função em Python?
A Função em Python é um trecho de código que é executado quando é referenciado. É usado para utilizar o código em mais de um lugar em um programa. Também é chamado de método ou procedimento. Python fornece muitas funções integradas como print(), input(), compile(), exec(), etc. mas também dá liberdade para criar suas próprias funções.
Como definir e chamar uma função em Python
Função em Python é definido pelo “definitivo” instrução seguida pelo nome da função e parênteses ( () )
Exemplo:
Vamos definir uma função usando o comando “def func1():” e chamar a função. A saída da função será "Estou aprendendo Python função".
A função imprimir função1() chama nosso def func1(): e imprime o comando ” Estou aprendendo Python função Nenhum."
Existem um conjunto de regras em Python para definir uma função.
- Quaisquer argumentos ou parâmetros de entrada devem ser colocados entre parênteses
- A primeira instrução da função pode ser uma instrução opcional - docstring ou a string de documentação da função
- O código dentro de cada função começa com dois pontos (:) e deve ser recuado (espaço)
- A instrução return (expressão) sai de uma função, opcionalmente devolvendo um valor ao chamador. Uma instrução return sem argumentos é o mesmo que return None.
Significado do recuo (espaço) em Python
Antes de nos familiarizarmos com Python funções, é importante que entendamos a regra de indentação para declarar Python funções e estas regras são aplicáveis a outros elementos do Python bem como declarar condições, loops ou variáveis.
Python segue um estilo particular de recuo para definir o código, já que Python funções não têm início ou fim explícito, como chaves para indicar o início e o fim da função, elas precisam confiar neste recuo. Aqui tomamos um exemplo simples com o comando “print”. Quando escrevemos a função “print” logo abaixo da função def 1(): Ele mostrará um “erro de indentação: esperava um bloco indentado".
Agora, ao adicionar o recuo (espaço) na frente da função “imprimir”, ele deve ser impresso conforme o esperado.
Pelo menos um recuo é suficiente para fazer seu código funcionar com sucesso. Mas como prática recomendada, é aconselhável deixar cerca de 3-4 recuos para chamar sua função.
Também é necessário que ao declarar o recuo, você tenha que mantenha o mesmo recuo para o resto do seu código. Por exemplo, na captura de tela abaixo, quando chamamos outra instrução “ainda em func1” e quando não é declarada logo abaixo da primeira instrução print, ele mostrará um erro de indentação “desindentação não corresponde a nenhum outro nível de indentação.”
Agora, quando aplicamos o mesmo recuo para ambas as instruções e as alinhamos na mesma linha, obtemos o resultado esperado.
Como o valor de retorno da função?
Comando de retorno em Python especifica qual valor retornar ao chamador da função. Vamos entender isso com o seguinte exemplo
Passo 1) A função não retorna nada
Aqui – vemos quando a função não é “retorno”. Por exemplo, queremos o quadrado de 4, e deve dar resposta “16” quando o código for executado. O que ocorre quando simplesmente usamos o código “print x*x”, mas quando você chama a função “print square” ela fornece “None” como saída. Isso ocorre porque quando você chama a função, a recursão não acontece e cai no final da função. Python retorna “None” por falha no final da função.
Etapa 2) Substitua o comando de impressão pelo comando de atribuição
Para deixar isso mais claro, substituímos o comando de impressão pelo comando de atribuição. Vamos verificar a saída.
Quando você executa o comando “print square (4)” ele na verdade retorna o valor do objeto, já que não temos nenhuma função específica para executar aqui ele retorna “None”.
Etapa 3) Use a função ‘return’ e execute o código
Agora, aqui veremos como recuperar a saída usando o comando “return”. Quando você usa a função “return” e executa o código, ele fornecerá a saída “16”.
Etapa 4) Execute o comando ‘imprimir quadrado’
Funções em Python são eles próprios um objeto, e um objeto tem algum valor. Veremos aqui como Python trata um objeto. Quando você executa o comando “print square” ele retorna o valor do objeto. Como não passamos nenhum argumento, não temos nenhuma função específica para executar aqui, ela retorna um valor padrão (0x021B2D30) que é a localização do objeto. Na prática Python programa, você provavelmente nunca precisará fazer isso.
Argumentos em Funções
O argumento é um valor que é passado para a função quando ela é chamada.
Em outras palavras, do lado da chamada, é um argumento e do lado da função, é um parâmetro.
Vamos ver como Python Args funciona -
Passo 1) Os argumentos são declarados na definição da função. Ao chamar a função, você pode passar os valores desses argumentos conforme mostrado abaixo
Passo 2) Para declarar um valor padrão de um argumento, atribua-lhe um valor na definição da função.
Exemplo: x não tem valores padrão. Valores padrão de y=0. Quando fornecemos apenas um argumento ao chamar a função de multiplicação, Python atribui o valor fornecido a x enquanto mantém o valor de y=0. Daí a multiplicação de x*y=0
Passo 3) Desta vez, alteraremos o valor para y=2 em vez do valor padrão y=0, e retornaremos a saída como (4×2)=8.
Passo 4) Você também pode alterar a ordem em que os argumentos podem ser passados Python. Aqui invertemos a ordem dos valores x e y para x=4 e y=2.
Passo 5) Vários argumentos também podem ser passados como um array. Aqui no exemplo chamamos os vários argumentos (1,2,3,4,5) chamando a função (*args).
Exemplo: Declaramos vários argumentos como número (1,2,3,4,5) quando chamamos a função (*args); ele imprime a saída como (1,2,3,4,5)
Tips:
- In Python 2.7. sobrecarga de função não é suportado em Python. Sobrecarga de função é a capacidade de criar vários métodos com o mesmo nome com uma implementação diferente. A sobrecarga de função é totalmente suportada em Python 3
- Existe uma grande confusão entre métodos e funções. Métodos em Python estão associados a instâncias de objetos, enquanto funções não. Quando Python chama um método, ele vincula o primeiro parâmetro dessa chamada à referência de objeto apropriada. Em palavras simples, uma função autônoma em Python é uma “função”, enquanto uma função que é um atributo de uma classe ou instância é um “método”.
Aqui está o completo Python Código 3
#define a function def func1(): print ("I am learning Python function") print ("still in func1") func1() def square(x): return x*x print(square(4)) def multiply(x,y=0): print("value of x=",x) print("value of y=",y) return x*y print(multiply(y=2,x=4))
Aqui está o completo Python Código 2
#define a function def func1(): print " I am learning Python function" print " still in func1" func1() def square(x): return x*x print square(4) def multiply(x,y=0): print"value of x=",x print"value of y=",y return x*y print multiply(y=2,x=4)
Resumo
Função em Python é um trecho de código reutilizável usado para executar uma ação única e relacionada. Neste artigo veremos
- Função definida pelo def afirmação
- O bloco de código dentro de cada função começa com dois pontos (:) e deve ser recuado (espaço)
- Quaisquer argumentos ou parâmetros de entrada devem ser colocados entre parênteses, etc.
- Pelo menos um recuo deve ser deixado antes do código após declarar a função
- O mesmo estilo de recuo deve ser mantido em todo o código na função def
- Para melhores práticas, três ou quatro travessões são considerados melhores antes da declaração
- Você pode usar o comando “return” para retornar valores para a chamada de função.
- Python imprimirá um valor aleatório como (0x021B2D30) quando o argumento não for fornecido à função de chamada. Exemplo “função de impressão”.
- Do lado da chamada é um argumento e do lado da função é um parâmetro
- Valor padrão no argumento – Quando fornecemos apenas um argumento ao chamar a função de multiplicação ou qualquer outra função, Python atribui o outro argumento por padrão
- Python permite que você inverta a ordem do argumento também