Baixe o app para aproveitar ainda mais
Prévia do material em texto
LÓGICA DE PROGRAMAÇÃO E ESTRUTURAS DE DADOS Professor Marcelo Ferreira Zochio 2 4 FUNÇÕES E RECURSOS Nesse tópico, você irá conhecer para que servem as funções em Python, e como elas facilitam a programação e auxiliam na tarefa de tornar programas menos complexos. Também irá conhecer a função dos argumentos e parâmetros na linguagem Python, como usar recursão nessa linguagem, trabalhar com bibliotecas e fazer comentários em seus programas em Python. 4.1 Funções e procedimentos Com frequência, há certos trechos em um programa que precisam ser executados várias vezes, ou algumas vezes. Ao invés de escrevê-los várias vezes no programa, há como registrá-lo uma só vez e chamá-los quando necessário. A esses "subprogramas" dentro de um programa principal dá-se o nome de funções. Há funções nativas no Python, ou seja, aquelas que vêm junto com a linguagem, por exemplo, as funções type, pow (potenciação), len (medir comprimento de string), entre outras. Você pode criar sua própria função. Para fazer isso em Python, deve-se iniciar a função com o comando def <nome_da_função>(): Exemplo: def prompt_do_usuário(): a = input(“Digite seu nome: “) b = input(“Digite sua idade: “) prompt_do_usuário() 3 No script acima, tudo o que estiver indentado abaixo do nome da função pertence a ela, e serão as instruções a serem executadas na função. A quarta linha nesse script chama a função para ser executada, e já não pertence à função. 4.2 Atribuição de parâmetros Algumas funções nativas da linguagem Python requerem argumentos, que são valores que controlam como essa função faz seu trabalho. Por exemplo, se você quer achar o cosseno de um número, você deve usar a biblioteca math, a função cos e indicar o número a que você se refere, por exemplo, math.cos(25). Deste modo, a função cos recebe um valor numérico, no caso acima o valor é igual a 25, como um argumento. Há funções que requerem mais de um argumento; tudo dependerá de como ela foi escrita. Parâmetro é o nome da variável que recebe um valor, que é chamado de argumento. Argumentos e parâmetros exercem uma importante função dentro da linguagem Python, sendo muito úteis no conceito de orientação a objeto. 4 4.3 Recursão Recursão é um método de solução de problemas que quebra um problema em problemas menores até chegar a um ponto em que ele possa ser resolvido facilmente. Normalmente, a recursão envolve uma função que chama a si mesma. Embora não pareça, ela nos permite escrever soluções assertivas para problemas que, de outra forma, seriam muito difíceis de escrever em um programa. Como exemplo, considere uma função que soma os números de uma lista, escrito a seguir: lista = [1, 2, 3, 4, 5] def somalista(lista): if len(lista) == 1: return lista[0] else: return lista[0] + somalista(lista[1:]) print('Resultado de somalista:', somalista(lista)) print('Resultado esperado:', sum(lista)) Na linha 3, o programa verifica se a lista possui somente um elemento. Na linha 6, a função chama a si mesmo, razão pela qual ela é recursiva. Um programa que calcula um fatorial de um número também usa função recursiva. Veja um exemplo: # -*- coding: cp1252 -*- def fatorial(n): if n ==1: return n else: 5 return fatorial(n-1) * n n = float(input("Coloque a número que você quer calcular o fatorial: ")) print(fatorial(n)) Note que a função chama a si mesma subtraindo 1 do argumento n, que é o valor que você preencherá na variável ao executar o programa. SAIBA MAIS Neste vídeo, você aprenderá mais sobre funções recursivas aplicadas a Python. Vídeo: Aulas Python - 039 - Funções VI: Recursividade AULAS Python – 039 – Funções VI: recursividade. 2014. Disponível em: <https://www.youtube.com/watch?v=WAziZkbo5Ss>. Acesso em: 14 fev. 2019. 4.4 Bibliotecas Bibliotecas são coleções de módulos acessíveis a um programa feito na linguagem Python (no caso de você usar essa linguagem), ou qualquer outra, criadas para simplificar o processo de programação e não ter a necessidade de reescrever os comandos e funções mais usados. As bibliotecas podem ser usadas importando-as no início de um programa. Na linguagem Python, o comando usado para importar bibliotecas é o import. Veja um exemplo de trecho de código com importação de bibliotecas: import Image import sys import os https://www.youtube.com/watch?v=WAziZkbo5Ss 6 from Crypto.Cipher import AES IV_SIZE = 16 block_size = 16 As bibliotecas facilitam a programação de um sistema, pois possibilitam o reaproveitamento de código para outros programas. Há bibliotecas para todo tipo de desenvolvimento: bibliotecas para trabalhar com imagens; bibliotecas para criptografia; bibliotecas para trabalhar com documentos do tipo DOCX, XLS, XML, DOC, PDF; bibliotecas para trabalhar com comandos do seu sistema operacional, entre muitas outras. Você pode criar sua própria biblioteca. Veja um exemplo: Criando uma biblioteca def media_unisa(a, b): return (a*0.4)+(b*0.6) Salve esse script em formato .py; depois faça esse outro script, e salve-o no mesmo local da biblioteca, também com extensão .py: import media_unisa_lib nota1 = float(input("Digite a nota da AVC: ")) nota2 = float(input("Digite a nota da AVG: ")) soma = media_unisa_lib.media_unisa(nota1, nota2) print ("Resultado = ", soma) 7 Você usou uma biblioteca criada por você para executar um programa de cálculo de média. Toda universidade que usar o mesmo método de cálculo contido nessa biblioteca pode empregá-la para compor seus programas de cálculo de média. 4.5 Comentários Quando temos a necessidade de explicar certas partes de um código, usamos os comentários, que são trechos escritos no programa que não serão compilados ou interpretados pelo compilador ou interpretador da linguagem. Na linguagem Python, para escrevermos comentários, iniciamos esses comentários com o caractere #. Veja um exemplo: print(“Qualquer coisa”) # Esse comando vai mostrar na tela a string “Qualquer coisa” Tudo o que estiver escrito na linha depois do caractere # será considerado comentário. Há comentários que são considerados pelo interpretador Python. São os comentários funcionais. Eles iniciam e terminam com os caracteres -*-. Veja um exemplo muito usado: # -*- coding: UTF-8 -*- Nesse caso, estamos dizendo ao programa que a codificação de teclado a ser usada é a UTF-8. Conclusão Nesse tópico, você aprendeu sobre a importância da linguagem Python e como fazer uso de suas funções e outros recursos. No próximo tópico você verá como representar e trabalhar com estruturas de dados na linguagem Python. 8 Referência PERKOVIC, Ljubomir. Introdução à computação usando Python: um foco no desenvolvimento de aplicações. Rio de Janeiro: LTC, 2016.
Compartilhar