




























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Resumo da matéria por completo.
Tipologia: Resumos
1 / 139
Esta página não é visível na pré-visualização
Não perca as partes importantes!





























































































A Linguagem Python
A linguagem Python
Este conteúdo é um vídeo!
Para assistir este conteúdo é necessário que você acesse o AVA pelo computador ou pelo aplicativo. Você pode baixar os vídeos direto no aplicativo para assistir mesmo sem conexão à internet. Dica para você Aproveite o acesso para baixar os slides do vídeo, isso pode deixar sua aprendizagem ainda mais completa.
Estudante, esta videoaula foi preparada especialmente para você. Nela, você irá aprender conteúdos importantes para a sua formação pro ssional. Vamos assisti-la? Bons estudos!
Ponto de Partida
Python é uma linguagem de programação de alto nível amplamente usada na indústria de tecnologia. Nesta aula, você começará a entender por que a
Python é tão popular e como pode ser utilizada em diversas aplicações.
Você conhecerá as ferramentas necessárias para dar início à programação em Python, o que inclui a instalação do Python em seu computador e a seleção de um ambiente de desenvolvimento adequado.
As variáveis são fundamentais na programação, pois permitem armazenar e manipular dados. Durante esta etapa de estudos, você aprenderá a criar variáveis e descobrirá os diferentes tipos
de dados disponíveis em Python.
Como professor, preciso avaliar constantemente os estudantes. Sendo assim, quero automatizar a média de notas dos alunos. É possível fazer isso utilizando Python?
Vamos Começar!
In [1]: print("hello world!") hello world!
Há uma lenda entre programadores segundo a qual se você não imprimir o “hello world” quando começar a aprender uma linguagem, não conseguirá assimilar nada sobre ela (Ciência da Computação, 2015). Para não correr tal risco, essa foi a primeira linha de comando apresentada a você dentre as muitas que aprenderá nesta disciplina.
Python é uma linguagem de programação versátil e fácil de aprender. Foi criada por Guido van Rossum e lançada em 1991. Guido é o principal autor da Python, embora haja muitas contribuições de outros pesquisadores (Python v3.0.1 Documentation, [s. d.]). Desde então, tornou-se uma das linguagens mais populares do mundo por causa de sua legibilidade e sintaxe simples. Você pode se perguntar: “por que escolher Python?”. A resposta é clara: Python é usado em várias áreas, incluindo desenvolvimento web, automação, aprendizado de máquina e análise de dados.
De acordo com o guia de desenvolvimento para iniciantes Python (Python Wiki, 2022), trata-se de uma linguagem de programação orientada a objetos, clara e poderosa, comparável a Perl, Ruby, Scheme ou Java.
Python tem se mostrado uma linguagem muito e ciente e vem sendo amplamente adotada por pro ssionais na área de dados (Agarwal, 2023), destacando-se por sua sintaxe. Uma das principais loso as de Guido van Rossum, o criador da linguagem, é que o código deve ser facilmente legível, uma vez que é lido com mais frequência do que é escrito. Isso é formalizado no PEP 8, o Guia de Estilo para Código Python, que estabelece as diretrizes para a formatação, organização e estruturação do código (Rossum; Warsaw; Coghlan, 2023). Seguir essas diretrizes resulta em um código que é considerado “pythonic” – ou seja, que adere aos princípios descritos no PEP 8. Essas regras abrangem elementos como a maneira com que o código é formatado, o modo pelo qual as funções são de nidas e organizadas, a forma de aplicação da indentação e outros aspectos relacionados à sintaxe do código Python.
Siga em Frente...
O uxo de um algoritmo é a entrada, o processamento e a saída. Note que, para que o processamento ocorra, é necessário armazenar os valores da entrada, por exemplo. Assim surge o conceito de variável, que nada mais é do que um espaço alocado na memória RAM.
O interpretador Python consegue estabelecer o tipo de dado da variável observando seu valor. Con ra alguns exemplos:
x = 10 nome = 'aluno' nota = 8. fez_inscricao = True
Observe que x é um número inteiro, nome é uma string, nota é um número decimal e fez_inscricao é um booleano. Será que Python é capaz de de nir o tipo de variável somente com base no valor fornecido em cada variável?
Utilizaremos a função print() e type().
print(type(x)) print(type(nome)) print(type(nota)) print(type(fez_inscricao))
Como esperado, o Python acertou todos os tipos de variáveis. Note, também, que em Python tudo é objeto. Sendo assim, os tipos de dados aparecem com a palavra “class”, que é uma classe.
Já conseguimos criar uma variável. Que tal melhorar o famoso “hello world”? Para isso, usaremos a função input(), que faz a leitura de um valor digitado.
nome = input()
print(nome) Digite um nome: Estudante Querido Estudante Querido
Ao executar o comando input, surge o campo para digitar o que será capturado – no nosso caso, “Estudante Querido”. Logo após, a função print() mostra a variável “nome”. Vamos melhorar nosso “hello world”!
Existem muitas formas de imprimir textos e variáveis em Python. Usaremos formatadores de caracteres (igual em C) e a f-string.
#formatadores de caracteres print("Olá, %s, bem-vindo à disciplina de programação. Parabéns pelo seu primeiro hello world" % (nome)) Olá, Estudante Querido, bem-vindo à disciplina de programação. Parabéns pelo seu primeiro hello world #F-string print(f{nome}, bem-vindo à disciplina de programação. Parabéns pelo seu primeiro hello world") Olá, Estudante Querido, bem-vindo à disciplina de programação. Parabéns pelo seu primeiro hello world
De acordo com o PEP 498 (Smith, [s. d.]), a melhor opção é utilizar “f-string”. Sendo assim, usaremos esse recurso em nossas aulas.
Esta etapa de aprendizagem consistiu em uma introdução básica do Python, suas respectivas ferramentas e alguns exemplos de uso. O objetivo desta aula era mostrar como surgiu a linguagem Pyhton, onde conseguimos usá-la e como esse processo deve ser feito. Para concluir, a intenção nal era deixar você curioso para aprender mais. Espero que isso tenha acontecido!
Vamos Exercitar?
Você se lembra da minha pergunta inicial? É possível utilizar Python para automatizar as médias dos meus alunos? Depois de tudo o que vimos nesta aula, a resposta é sim!
Nota_1 = int(input()) Nota_2 = int(input()) Nota_3 = int(input()) Nota_4 = int(input()) #observe que utilizamos a função int(), pois, sem ela, o Python entenderia que as notas seriam String
Referências
A ORIGEM do “Hello World”. Ciência da Computação, 2015. Disponível em: https://cienciacomputacao.com.br/curiosidade/a-origem-do-hello-world/. Acesso em: 12 out.
AGARWAL, A. From C to Python, and everything... LinkedIn, 2023. Disponível em: https://www.linkedin.com/feed/update/urn:li:activity:7056881167563702272/. Acesso em: 12 out. 2023.
ANACONDA. Página inicial, [s. d.]. Disponível em: https://www.anaconda.com/. Acesso em: 12 out. 2023.
BARRY, P. Use a Cabeça! Python. 2. ed. Rio de Janeiro: Alta Books, 2018. E-book. Disponível em: https://integrada.minhabiblioteca.com.br/#/books/9786555207842. Acesso em: 12 out. 2023.
BEGINNER’S Guide. Python Wiki, 22 nov. 2022. Disponível em: https://wiki.python.org/moin/BeginnersGuide/Overview. Acesso em: 12 out. 2023.
CAETANO, M. A. L. Python e mercado nanceiro: programação para estudantes, investidores e analistas. São Paulo: Blucher, 2021. E-book. Disponível em: https://integrada.minhabiblioteca.com.br/#/books/9786555062410. Acesso em: 12 out. 2023.
GOOGLE COLAB. Página inicial, [s. d.]. Disponível em: https://colab.research.google.com/. Acesso em: 12 out. 2023.
HISTORY and license. Python v3.0.1 Documentation, [s. d.]. Disponível em: https://docs.python.org/3.0/license.html. Acesso em: 12 out. 2023.
INSTALANDO o Python 3 no Linux. Python Brasil, 27 jun. 2023. Disponível em: https://python.org.br/instalacao-linux/. Acesso em: 12 out. 2023.
INSTALANDO o Python 3 no Mac OS X. Python Brasil, 1 nov. 2016. Disponível em: https://python.org.br/instalacao-mac/. Acesso em: 12 out. 2023.
INSTALANDO o Python 3 no Windows. Python Brasil, 30 nov. 2019. Disponível em: https://python.org.br/instalacao-windows/. Acesso em: 12 out. 2023.
MUELLER, J. P. Começando a programar em Python para leigos. Rio de Janeiro: Alta Books, 2020. E-book. Disponível em: https://integrada.minhabiblioteca.com.br/#/books/9786555202298. Acesso em: 12 out. 2023.
PYCHARM. JetBrains, 5 fev. 2010. Disponível em: https://www.jetbrains.com/pycharm/. Acesso em: 12 out. 2023.
ROSSUM, G. V.; WARSAW, B.; COGHLAN, A. PEP 8 – Style Guide for Python Code. Python Enhancement Proposals, 9 dez. 2023. Disponível em: https://peps.python.org/pep- 0008/#introduction. Acesso em: 12 fev. 2023.
SMITH, E. V. PEP 498 – Literal String Interpolation. Python Enhancement Proposals, [s. d.]. Disponível em: https://peps.python.org/pep-0498/. Acesso em: 12 out. 2023.
TRY JUPYTER. Jupyter, [s. d.]. Disponível em: https://jupyter.org/try. Acesso em: 12 out. 2023.
VISUAL Studio. Microsoft, [s. d.]. Disponível em: https://visualstudio.microsoft.com/pt-br/. Acesso em: 12 out. 2023.
Estruturas Condicionais em Python
Estruturas condicionais em Python
Este conteúdo é um vídeo!
Para assistir este conteúdo é necessário que você acesse o AVA pelo computador ou pelo aplicativo. Você pode baixar os vídeos direto no aplicativo para assistir mesmo sem conexão à internet. Dica para você Aproveite o acesso para baixar os slides do vídeo, isso pode deixar sua aprendizagem ainda mais completa.
Estudante, esta videoaula foi preparada especialmente para você. Nela, você irá aprender conteúdos importantes para a sua formação pro ssional. Vamos assisti-la? Bons estudos!
Ponto de Partida
Dando continuidade ao nosso aprendizado sobre Python, nesta aula vamos conhecer três conceitos fundamentais para a implementação de algoritmos.
!= Diferente
is Identidade do objeto
is not Negação da identidade do objeto
Quadro 1 | Operadores relacionais. Fonte: adaptado de Python 3.12.2 Documentation ([s. d.]).
Lembre-se de que já utilizamos um operador desse tipo na primeira aula quando estabelecemos a condição de que a média fosse maior ou igual a 6 para que o aluno recebesse a aprovação. A partir de agora, utilizaremos cada vez mais esses operadores para criar códigos mais robustos.
Estruturas lógicas
Além dos operadores relacionais, que comparam valores, também utilizamos operadores booleanos para construir decisões mais complexas em programação. Os operadores booleanos ajudam a combinar diferentes condições e a orientar o uxo do programa de acordo com a lógica desejada.
Operador “E” (and)
O operador “E” (and) permite a realização da operação lógica “E”. Isso signi ca que, ao usar a expressão (a and b), o resultado será “Verdadeiro” somente quando ambos os argumentos, “a” e “b”, forem verdadeiros. Caso contrário, o resultado será “Falso”.
Operador “OU” (or)
O operador “OU” (or) realiza a operação lógica “OU”. Ao utilizar a expressão (a or b), o resultado será “Verdadeiro” se pelo menos um dos argumentos, “a” ou “b”, for verdadeiro. A expressão será “Falsa” apenas quando ambos os argumentos forem falsos.
Operador “NÃO” (not)
O operador “NÃO” (not) é responsável por inverter o valor do argumento. Ao aplicarmos a expressão (not a), ela transformará “Verdadeiro” em “Falso”, e vice-versa. Ou seja, se o argumento for verdadeiro, a operação o tornará falso, e, se for falso, a operação o tornará verdadeiro.
Esses operadores booleanos são essenciais para a criação de estruturas de decisão mais so sticadas, pois possibilitam que os programas lidem com uma variedade de situações e critérios lógicos. São usados para controlar o uxo de execução com base em condições complexas e, assim, tornam viável a elaboração de programas que tomam decisões de acordo com critérios especí cos.
Siga em Frente...
Estruturas condicionais if, else e elif
No dia a dia, temos muitas escolhas a fazer, regras a seguir. Pense em você mesmo dirigindo. Se o semáforo está verde, você pode seguir; caso contrário, deve parar, pois está vermelho (desconsideraremos o amarelo por ora).
Esse contexto se relaciona com a estrutura if... else da seguinte maneira:
A condição “se o semáforo estiver verde” é satisfeita (verdadeira), então você segue em frente (if).
A condição “se o semáforo estiver vermelho” não é satisfeita (falsa), então você para (else).
Nese exemplo, assim como acontece na programação, se uma condição é atendida, o uxo de execução segue um caminho (verdadeiro); caso contrário, segue outro caminho (falso). Os comandos if e else são como bifurcações em uma estrada, orientando o uxo do programa com base nas condições estabelecidas.
O comando elif, em Python, é uma abreviação de “else if”, sendo usado em estruturas condicionais para avaliar múltiplas condições em sequência. É frequentemente utilizado após um bloco if e antes de um bloco else. A ideia por trás do elif é permitir que você veri que várias condições em ordem e, quando uma delas for verdadeira, o bloco de código associado a essa condição será executado.
Con ra, a seguir, uma explicação mais detalhada sobre o elif:
Para resumir o que analisamos até agora, imagine que estejamos construindo uma máquina de venda automática de refrigerantes.
Os operadores relacionais são como os sensores que veri cam se você inseriu a moeda correta ou não. Eles nos ajudam a determinar se a condição foi atendida (por exemplo: “a moeda é maior ou igual a R$1,00?”).
iguais a 12 anos e menores de 18; por m, o terceiro lme é recomendado para maiores ou iguais a 18 anos. Outro ponto solicitado pela diretoria do cinema diz respeito à disponibilidade de ingressos. Vamos para o código!
idade = int(input(“Por favor, digite sua idade: ”))
if idade < 12 : print(“Recomendamos o lme infantil FILME 1.”) elif 12 <= idade < 18 : print(“Recomendamos o lme adolescente FILME 2.”) else: print(“Recomendamos o emocionante FILME 3.”)
quantidade_ingressos = 10 # Suponha que haja 10 ingressos disponíveis if quantidade_ingressos > 0 : print(“Ingressos estão disponíveis. Divirta-se no cinema!”) else: print(“Desculpe, todos os ingressos estão esgotados para hoje.”)
Rode esse código no seu Google Colab e faça testes, substitua a disponibilidade de ingresso, insira idades diferentes... En m, “brinque” com ele.
Gostou dessa solução? Espero que sim! Esta é a nossa segunda aula e já construímos um modelo de recomendação. Vamos seguir cada vez mais fundo nesse mundo de Python!
Saiba mais
OHASHI, F. K. et al. Arquitetura de sistemas de recomendação para apoio ao vendedor no uso de sistemas de força de vendas em empresa com grande portfólio de produtos. Revista Ibérica de Sistemas e Tecnologias de Informação, Lousada, n. 42, p. 46-61, jun. 2021.
MUELLER, J. P. Começando a programar em Python para leigos. Rio de Janeiro: Alta Books, 2020. E-book.
BARRY, P. Use a Cabeça! Python. 2. ed. Rio de Janeiro: Alta Books, 2018. E-book.
Referências
BARRY, P. Use a Cabeça! Python. 2. ed. Rio de Janeiro: Alta Books, 2018. E-book. Disponível em: https://integrada.minhabiblioteca.com.br/#/books/9786555207842. Acesso em: 12 out. 2023.
BUILT-IN Types. Python 3.12.2 Documentation, [s. d.]. Disponível em: https://docs.python.org/3/library/stdtypes.html. Acesso em: 14 out. 2023.
MANZANO, J. A. N. G.; OLIVEIRA, J. F. de. Algoritmos: lógica para desenvolvimento de programação de computadores. 29. ed. São Paulo: Érica, 2019.
MUELLER, J. P. Começando a programar em Python para leigos. Rio de Janeiro: Alta Books, 2020. E-book. Disponível em:
https://integrada.minhabiblioteca.com.br/#/books/9786555202298. Acesso em: 12 out. 2023.
OHASHI, F. K. et al. Arquitetura de sistemas de recomendação para apoio ao vendedor no uso de sistemas de força de vendas em empresa com grande portfólio de produtos. Revista Ibérica de Sistemas e Tecnologias de Informação, Lousada, n. 42, p. 46-61, jun. 2021. Disponível em:
https://scielo.pt/pdf/rist/n42/1646-9895-rist-42-46.pdf. Acesso em: 14 out. 2023.
Estruturas de Repetição em Python
Estruturas de repetição em Python
A estrutura de repetição for, em Python, é uma poderosa ferramenta que nos permite realizar ações repetitivas de maneira controlada (Manzano; Oliveira, 2019). Em um loop for, especi camos um conjunto de elementos (por exemplo, uma lista ou uma sequência) e, em seguida, o código é executado para cada elemento desse conjunto. Tal estrutura é especialmente útil quando sabemos previamente quantas vezes queremos repetir uma ação ou quando temos uma coleção de itens a serem processados.
Con ra, a seguir, o exemplo simples de um loop for que itera por uma lista de números e imprime cada número:
numeros = [ 1 , 2 , 3 , 4 , 5 ]
for numero in numeros: print(numero)
Nesse exemplo, a variável ‘numero’ assume o valor de cada elemento da lista ‘numeros’ em sequência, e o bloco de código dentro do loop é executado para
cada valor. Isso resultará na impressão dos números de 1 a 5.
O loop for é uma ferramenta e caz para automatizar tarefas repetitivas e processar coleções de dados de modo e ciente.
Estrutura de repetição while
O comando while é uma ferramenta muito importante na programação Python, sendo usado para criar estruturas de repetição quando o número de repetições não é conhecido antecipadamente. Ele permite que um bloco de código seja executado repetidamente enquanto uma condição especi cada for verdadeira. Isso torna o while ideal para situações em que a execução deve continuar até que uma condição especí ca seja atendida.
Acompanhe, a seguir, um exemplo simples de uso do while para veri car se um número inserido pelo usuário é par ou ímpar e encerrar o programa quando o número zero for inserido:
1 numero = int(input() 2
3 while numero != 0 : 4 if numero % 2 == 0 : 5 print() 6 else: 7 print() 8 numero = int(input())
Nesse caso, o bloco de código dentro do while é executado repetidamente enquanto a condição numero != 0 for verdadeira. Isso permite que o programa solicite ao usuário números repetidamente até que o número zero seja inserido, encerrando o programa. O while é uma ferramenta valiosa para lidar com situações em que a iteração é necessária, mas o número de repetições não é conhecido com antecedência.
Siga em Frente...
A função range(), em Python, é uma ferramenta útil para criar sequências numéricas que podem ser usadas em estruturas de repetição, como o comando for. Ela oferece exibilidade ao especi car os limites e o incremento da sequência.
Método 1 – Repetição por quantidade
No primeiro método, você pode passar um único argumento para range(), que representa a quantidade de vezes em que o loop deve ser repetido. Por exemplo, range(5) cria uma sequência que se inicia em 0 e vai até 4, realizando 5 iterações.
for x in range( 5 ): print(x) #a saída será: 0 1 2 3 4
Método 2 – Limites inicial e superior
No segundo método, você pode fornecer dois argumentos para range(). O primeiro argumento representa o início das repetições e o segundo, o limite superior (não incluso) do valor da variável de controle. Por exemplo, range(2, 7) cria uma sequência que se inicia em 2 e vai até 6, realizando 5 iterações.
break #a saída será: O primeiro número par encontrado é: 2
Nesse exemplo, o loop “for” itera de 1 a 10, mas, assim que encontra o primeiro número par (2), o comando “break” é acionado. Desse modo, interrompe-se a execução do loop.
O comando “continue” é usado para pular a iteração atual em uma estrutura de repetição e continuar com a próxima iteração. Isso é vantajoso quando você deseja ignorar uma iteração com base em uma condição, mas quer continuar com o restante do loop.
Vamos considerar um loop que imprime todos os números de 1 a 10, exceto o número 5:
for numero in range( 1 , 11 ): if numero == 5 : continue print(numero) #a saída será: 1 2 3 4 6 7 8 9
Nesse caso, quando o número é igual a 5, o comando “continue” é acionado, fazendo com que a iteração atual seja abandonada. A execução continua com o próximo número.
Em resumo, o “break” e o “continue” são comandos úteis para controlar o uxo em estruturas de repetição, permitindo interromper loops antecipadamente com “break” e pular iterações especí cas com “continue”, com base em condições especí cas. Essas ferramentas adicionam exibilidade ao controle de repetições em Python.
Vamos Exercitar?
Vamos pensar na solução do problema apresentado no início desta aula. Precisamos criar um programa que seja capaz de percorrer todos os lmes (Filme 1, Filme 2, Filme 3, Filme 4 e Filme