O que é função e como utilizar na linguagem de programação Python.
Na linguagem Python uma função tem o poder de facilitar a vida o programador, porque elimina código repetitivos, isto porque, uma função é uma sequencia de comando e é separada por algumas partes que são:
- Para criar de uma função em Python é preciso iniciar “def” que corresponde a um coringa ou uma palavra especial.
- Toda função precisa de um nome, pode ser qualquer nome, geralmente se usa algo relacionado ao o objetivo da função.
- Na função pode ter um parâmetro, não é obrigatório, o parâmetro é representado entre parênteses.
- E por fim, a função pode ter um comando que é obrigatório ter pelo menos um, ou vários blocos de comandos, varia de acordo com a sua necessidade.
Veja abaixo a sintaxe de uma função em Python no slide retirado SegundaDev.py.
Vejam que, para ver o resultado da função no slide acima, em outra parte do código foi adicionado a função e passado vários parâmetros como:
- Palestras(‘Python’)
- Palestras(‘Java’)
- Palestras(‘React’)
- Palestras(‘Laravel’)
- Palestras(‘C#’)
- Palestras(‘MongoDB’)
Com isso, os parâmetros “Python, Java, React, Laravel, C# e MongoDB” a cada vez que é executado a função Palestras, esses valores vão para “dentro do parâmetro da função” e o comando da função faz o print do parâmetro retornando os respectivos valores.
Vejam na prática como acontece e, também outros exemplos.
def Palaestras(msg):
print(msg)
Palaestras('Python')
Palaestras('Java')
Palaestras('React')
Palaestras('Laravel')
Palaestras('C#')
Palaestras('MongoDB')
### Abaixo o código em execução ####
Windows PowerShell
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
Experimente a nova plataforma cruzada PowerShell https://aka.ms/pscore6
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI> & C:/Python38-32/python.exe "c:/Users/Silvio Morais/Google Drive/TRABALHO/Python/Explorando TI/obj013.py"
Python
Java
React
Laravel
C#
MongoDB
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI>
Veja no exemplo abaixo, a aplicação de uma função com o objetivo de fazer a soma de x e y, onde ordenadamente os valores atribuídos a função segue o primeiro número correspondente a x e o segundo número correspondente a y, visto que, este cenário pode ser alterado.
def soma(x, y): # função definida.
s = x + y # comando da função.
print(f'X + Y = {s}') # imprime o resultado do cálculo.
soma(y=10, x=5) # x é igual a 5 e y é igual a 10.
soma(152, 10) # x é igual a 10 e y é igual a 5.
### Abaixo código em execução ####
Windows PowerShell
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
Experimente a nova plataforma cruzada PowerShell https://aka.ms/pscore6
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI> & C:/Python38-32/python.exe "c:/Users/Silvio Morais/Google Drive/TRABALHO/Python/Explorando TI/obj013a.py"
X + Y = 15
X + Y = 162
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI>
Analisando o código acima, entendemos que:
- Temos a função soma definida com parâmetros x e y.
- O comando atribuído a esta função teve uma variável com nome “s” recebendo a soma de x e y.
- O último comando desta função é a impressão do resultado da soma com print formatado.
- Quando a função soma foi chamada no código a primeira condição foi informado que x e y estavam em posições trocadas, para isso foi necessário informar no parâmetro que y = 10 e x = 5, porém como é uma soma o valor será o mesmo.
def calc(* num):
soma = 0
for valor in num:
print(f'{valor} ', end='')
soma += valor
print(f'A soma dos valores é: {soma}')
calc(2, 5, 7,)
calc(6, 5)
calc(6, 9, 5, 780, 98)
### Abaixo o Código em Execução ###
Windows PowerShell
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
Experimente a nova plataforma cruzada PowerShell https://aka.ms/pscore6
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI> & C:/Python38-32/python.exe "c:/Users/Silvio Morais/Google Drive/TRABALHO/Python/Explorando TI/obj013b.py"
2 5 7 A soma dos valores é: 14
6 5 A soma dos valores é: 11
6 9 5 780 98 A soma dos valores é: 898
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI>
Analisando o código acima, entendemos que:
- A função “calc” foi definida com o parâmetro “* num”, onde asterisco corresponde a tudo, ou seja, todos os valores serão atribuídos a variável “num”.
- E um bloco de instruções sendo executado com for, que imprime os valores passados no atributo da função.
- Outro comando ainda dentro do ciclo de repetição é a soma de todos os valores, para isso foi criado uma variável chamada “soma” que recebe a soma da variável “valor” declarada no “for”.
- E por fim, agora fora do “for”, imprime os números e a soma.
def triplo(lista):
controle = 0
while controle < len(lista):
lista[controle] *= 3
controle += 1
valores = [1,2,3,4,5]
print(valores)
triplo(valores)
print(valores)
### Abaixo o Código em Execução ###
Windows PowerShell
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
Experimente a nova plataforma cruzada PowerShell https://aka.ms/pscore6
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI> & C:/Python38-32/python.exe "c:/Users/Silvio Morais/Google Drive/TRABALHO/Python/Explorando TI/obj013c.py"
[1, 2, 3, 4, 5]
[3, 6, 9, 12, 15]
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI>
Analisando o código acima, entendemos que:
- Temos a função definida com nome “triplo” com o parâmetro “lista”.
- Como comando dessa função, neste exemplo foi aplicado um laço de repetição com while.
- O objetivo deste laço de repetição é receber os valores informado na variável “valores” e multiplicar por 3.
- Isso acontece quando em outro local do código foi chamado a função “triplo”.
def dados(cidade, estado=None):
print('cidade: {}'.format(cidade))
if(estado is not None):
print('estado: {}'.format(estado))
else:
print('estado: não informado')
dados('Guarulhos', 'SP')
dados('Mairiporã')
### Abaixo o Código em Execução ###
Windows PowerShell
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
Experimente a nova plataforma cruzada PowerShell https://aka.ms/pscore6
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI> & C:/Python38-32/python.exe "c:/Users/Silvio Morais/Google Drive/TRABALHO/Python/Explorando TI/obj013d.py"
cidade: Guarulhos
estado: SP
cidade: Mairiporã
estado: não informado
PS C:\Users\Silvio Morais\Google Drive\TRABALHO\Python\Explorando TI>
Analisando o código abaixo, entendemos que:
- Temos uma função definida com nome “dados” e com parâmetros “cidades e estados”, porém estados está com valor vazio ou None.
- Um print formatado para imprimir na tela o nome da cidade e, o segundo parâmetro “estado” passa por um teste de validação.
Neste exemplo os comandos que compõem está função, temos uma condição estruturada com if e else fazendo o teste de validação, ou seja, se o parâmetro “estado” não tiver Nome ou vazio, imprime o nome do estado, caso contrário, imprime a informação “estado: não informado.
Baixe o E-book
Programando em Python 3 – Conceitos Básicos.
Nesse e-book você encontrará informações importantes sobre a linguagem de desenvolvimento Python 3.
Bem como o entendimento de operações básicas e exercícios, ao final terá condições de instalar o Python e começar a criar os primeiros programas.
Conteúdo
- Laço de repetição com FOR.
- Laço de Repetição com While.
- Listas, Tuplas e Dicionários.
- Função.
- Aplicação Web com Flask.