Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Tudo que poder ler, enquanto poder!, Exercícios de Matérias técnicas

Aprenda python, de forma fácil rápida e prática, uma leitura proveitosa o espera!

Tipologia: Exercícios

2021

Compartilhado em 24/05/2021

helder-basilio-buta
helder-basilio-buta 🇦🇴

3 documentos

1 / 155

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Learning.py
2020
Programa de Educação Tutorial - Engenharia Elétrica
Universidade Federal de Minas Gerais
Uma apostila de introdução
à programação em Python
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Pré-visualização parcial do texto

Baixe Tudo que poder ler, enquanto poder! e outras Exercícios em PDF para Matérias técnicas, somente na Docsity!

Learning.py

Programa de Educação Tutorial - Engenharia Elétrica

Universidade Federal de Minas Gerais

Uma apostila de introdução

à programação em Python

>>> title = ’MINICURSO DE PYTHON ’

>>> group = ’Programa de Educação Tutorial da Engenharia

Elétrica ’

>>> ufmg = ’Universidade Federal de Minas Gerais ’

>>> for i in (title , group , ufmg):

print(i, end=’\n\n’)

MINICURSO DE PYTHON

Programa de Educação Tutorial da Engenharia Elétrica

Universidade Federal de Minas Gerais

>>> texto = open(’texto1.txt ’, ’r’)

>>> msg = texto.read ()

>>> print(msg)

Esta apostila foi desenvolvida com o intuito de auxiliar

no curso de Python oferecido pelo Programa de Educação

Tutorial da Engenharia Elétrica(PETEE) da Universidade

Federal de Minas Gerais (UFMG).

A apostila é material gratuito , atualmente dispon ível no

site do PETEE.

A apostila introduz conceitos de programa ção utilizando a

linguagem Python. Na primeira parte , são apresentados

contextualiza ções e tutoriais de como instalar o

Python. Na segunda , são abordados conceitos básicos de

estruturas de dados , funções , operadores e controles de

fluxo. Já na terceira parte , os conceitos da segunda

são aprofundados , mostrando estruturas mais avançadas e

mais noções de funções. Na quarta e última parte , há

resoluções de exercícios e a bibliografia

Realizamos esta atividade com muito esmero.

>>> authors = ’Arthur Henrique Dias Nunes\ nIsrael Filipe

Silva Amaral ’

>>> date = ’Janeiro de 2020 ’

>>> print(authors , date , sep=’\n\n’)

Arthur Henrique Dias Nunes

Israel Filipe Silva Amaral

Janeiro de 2020

http://www.petee.cpdee.ufmg.br/

pilares: o pilar de ensino, porque ampliam e desenvolvem os conhecimentos dos petianos; o pilar da pesquisa, pois os petianos aprendem novos conteúdos e têm de pesquisar para isso; o pilar da extensão, porque o produto final do minicurso é levar à comunidade os conhecimentos adquiridos em forma de educação tutorial.

Minicurso de Python

A programação está muito presente não apenas no cotidiano dos petianos, mas de todos os graduan- dos em engenharia e também de diversos outros cursos superiores. Este também é um conhecimento que se torna cada vez mais presente com a disseminação de novos conteúdos em escolas, como ensino de robótica. Considerando agora o tema central do minicurso, a linguagem Python é conside- rada uma linguagem poderosa e fácil para se aprender, recomendada para o ensino de programação e atende vários níveis de programadores.

Tendo em vista este cenário, o Minicurso de Python foi desenvolvido para ser um curso de introdução à programação.

O grupo gostaria de agradecer, especialmente, a dois colegas e uma professora que contribuí- ram para o desenvolvimento da atividade, fornecendo materiais, dando sugestões, monitorias, indicações, dentre outros tipos de apoio. São eles: Luiz Eduardo Borges Santana, graduando de Engenharia Elétrica e monitor de Introdução a Programação de Computadores, ministrado pela professora Camila Laranjeira (Bibliografia 2); Luiz Gustavo Almeida de Oliveira, graduando de Engenharia de Controle e Automação.

As inscrições são abertas ao público e a apostila disponibilizada gratuitamente no site.

O Grupo

Tutora: Luciana Pedrosa Salles Discentes: Álvaro Rodrigues Araújo Amanda Andreatta Campolina Moraes Arthur Henrique Dias Nunes Diêgo Maradona Gonçalves Dos Santos Gustavo Alves Dourado Iago Conceição Gregorio Isabela Braga da Silva Israel Filipe Silva Amaral Italo José Dias José Vitor Costa Cruz Lorran Pires Venetillo Dutra Sarah Carine de Oliveira Thais Ávila Morato Tiago Menezes Bonfim Vinícius Batista Fetter Willian Braga da Silva

Contato

Site: http://www.petee.cpdee.ufmg.br/

Facebook: https://www.facebook.com/peteeUFMG/

Instagram: https://www.instagram.com/petee.ufmg/

E-mail: [email protected]

Localização: Universidade Federal de Minas Gerais, Escola de Engenharia, Bloco 3, Sala 1050.

Agradecimentos

Agradecemos ao Ministério da Educação (MEC), através do Programa de Educação Tutorial (PET), Pró-Reitoria de Graduação da Universidade Federal de Minas Gerais (UFMG) e à Escola de En- genharia da UFMG pelo apoio financeiro e fomento desse projeto desenvolvido pelo grupo PET Engenharia Elétrica da UFMG (PETEE - UFMG).

Sumário

  • 1 História I Introdução
  • 2 Preparação
  • 2.1 Instalação
  • 2.1.1 Windows
  • 2.2 Atualização
  • 2.2.1 MacOS
  • 2.2.2 Linux
  • 2.3 IDEs
  • 2.4 VENVs
  • 2.5 Instalador de Pacotes - pip
  • 2.6 Shell vs Script
  • 2.6.1 Shell
  • 2.6.2 Script
  • 2.7 Erros e Depuração
  • 3 Estrutura de Dados II Conceitos Básicos
  • 3.1 Variáveis
  • 3.1.1 Nomenclatura
  • 3.2 Tipos Primitivos
  • 3.2.1 Inteiro
  • 3.2.2 Ponto Flutuante
  • 3.2.3 Lógico
  • 3.2.4 Caractere
  • 3.3 Tipos do Python
  • Exercícios
  • 4 Comandos e Funções
  • 4.1 Importação
  • 4.1.1 Importação Otimizada
  • 4.1.2 Outras Bibliotecas
  • 4.2 Entrada e Saída de Dados
  • 4.2.1 Entrada
  • 4.2.2 Saída
  • Exercícios
  • 5 Operadores
  • 5.1 Aritméticos
  • 5.2 Lógicos
  • 5.3 Relacionais
  • 5.4 Atribuição
  • 5.5 Bit a bit
  • 5.6 Filiação e Identidade
  • 5.7 Precedência
  • Exercícios
  • 6 Controle de Fluxo
  • 6.1 Estruturas Condicionais
  • 6.1.1 if-else
  • 6.2 Estruturas de Repetição
  • 6.2.1 while
  • 6.2.2 for
  • 6.3 Desvio Incondicional
  • 6.3.1 break
  • 6.3.2 continue
  • 6.3.3 pass
  • Exercícios
  • 7 Estrutura de Dados II III Conceitos Avançados
  • 7.1 Listas
  • 7.1.1 Funções
  • 7.1.2 Laço for
  • 7.1.3 Fatiamento
  • 7.2 Tuplas
  • 7.2.1 Funções
  • 7.3 Dicionários
  • 7.3.1 Funções
  • 7.3.2 Laço for
  • 7.4 Strings
  • 7.4.1 Funções
  • Exercícios
  • 8 Comandos e Funções II
  • 8.1 Definição de Funções
  • 8.1.1 Escopo
  • 8.1.2 Recursividade
  • 8.2 Parâmetros Variados
  • 8.3 Leitura e Escrita de Arquivos
  • 8.4 Modularização
  • Exercícios
  • 9 Controle de Fluxo II
  • 9.1 Exceções
  • 9.1.1 Tratamento
  • 9.1.2 Comando raise
  • 9.1.3 Comando finally
  • 9.1.4 Comando with
  • 10 Orientação a Objetos: Introdução
  • 10.1 Objetos
  • 10.2 Atributos
  • 10.3 Métodos
  • 10.3.1 Acessores, Modificadores e Deletores
  • 10.3.2 Construtor
  • 10.3.3 Representação
  • 10.3.4 Built-in
  • 10.3.5 Estáticos
  • 10.4 Sobrecarga de Operadores
  • 10.5 Modificadores de Acesso
  • 10.6 Property
  • 10.7 Herança
  • Exercícios
  • 11 Pacotes
  • 11.1 Math
  • 11.2 Random
  • 11.3 Cores no Terminal
  • 11.4 NumPy
  • 11.5 Matplotlib
  • Resoluções IV Índice
  • Estruturas de Dados
  • Comandos e Funções
  • Operadores
  • Controle de Fluxo
  • Estruturas de Dados II
  • Comandos e Funções II
  • Orientação a Objetos: Introdução
  • Bibliografia

I

1 História............................. 13

2 Preparação......................... 19 2.1 Instalação 2.2 Atualização 2.3 IDEs 2.4 VENVs 2.5 Instalador de Pacotes - pip 2.6 Shell vs Script 2.7 Erros e Depuração

Introdução

  1. História

A linguagem Python foi desenvolvida em 1991 pelo holandês Guido van Rossum, Fig. 1.0.1. O nome Python foi devido ao costume do departamento onde foi criado de dar o nome em homenagem a algum programa de televisão. Sendo assim, o criador resolveu remeter à um de seus programas favoritos: Monty Python’s Flying Circus, Fig. 1.0.2. Apenas depois a analogia com a cobra píton foi estabelecida e é usada no símbolo da linguagem, que são duas cobras entrelaçadas.

Figura 1.0.1: Guido van Rossum em 2006

Atualmente a propriedade intelectual da linguagem é mantida pela Python Software Foundation. https://www.python.org/psf/. Trata-se de uma corporação sem fins lucrativos com objetivos principais de promover, proteger e evoluir a linguagem.

14 Capítulo 1. História

Figura 1.0.2: Monty Python’s Flying Circus

Python é uma linguagem de programação. As linguagens de programação podem ser enten- didas como intermediárias ou tradutoras entre usuários(programadores) e computadores. Elas são artifícios usados para passar instruções para máquinas, isto é, programar. Essas instruções são passadas por meio de códigos, rotinas, scripts ou outros arquivos. Elas também exigem o cumprimento de regras semânticas, bem como pontuações adequadas, palavras chaves e até mesmo identação(principalmente em Python), essas regras são conhecidas como sintaxe, que varia depen- dendo da linguagem.

A linguagem Python é classificada como linguagem de propósito geral, que possui uma sin- taxe elegante e tipagem dinâmica. Pode ser facilmente transformada para uma aplicação por meio da importação de bibliotecas. Também é uma linguagem orientada a objetos, ou seja, de alto nível. A hierarquia dos níveis de linguagens de programação pode ser observada na Fig. 1.0.

As linguagens de alto nível podem ser classificadas em dois tipos: as interpretadas e as compiladas. O primeiro tipo necessita de um interpretador que irá transformar o código fonte em uma saída. Já o segundo, necessita um compilador para transformar o código fonte em arquivos de objeto, binários ou executáveis e de um executor para ler tais arquivos. Geralmente, os códigos com- pilados possuem melhor desempenho, em termos de tempo e processamento do que os interpretados.

O Python é uma linguagem interpretada, assim, não necessita de compilação. Nesta lingua- gem, a identação é fundamental, o código não irá funcionar se não estiver devidamente identado, pois é este artifício que indica quais estruturas estão subordinadas, diferente de C++ que utiliza chaves para isso.

Motivação

O Python é uma linguagem de programação de uso geral. Atualmente, é uma das linguagens mais populares no mundo, sendo usada nos mais diversos campos, tais como machine learning, inteligência artificial, desenvolvimento de jogos, pesquisas acadêmicas e ensino de programação.

É uma linguagem fácil de aprender, o que a faz uma boa opção para começar a programar. Uma das

16 Capítulo 1. História

ideias fundamentais do Python é facilitar a criação de códigos que são simples de serem entendidos. Para isso, sua sintaxe é simples, clara e fácil de se entender.

Além disso, o Python é uma linguagem muito poderosa, sendo usada em diversos projetos e por várias grandes empresas, como por exemplo, Facebook, Google, NASA, Netflix, Dropbox e Instagram. Por causa de sua robustez e simplicidade, o Python é a linguagem de programação preferida por um grande número de startups. Há um conjunto de princípios que influenciaram o desenvolvimento e design da linguagem, conhe- cidos por Zen do Python, análogo ao Zen do Budismo. Trata-se de dezenove orientações sobre a linguagem e é possível observá-lo pelo comando import this. Com base nele, é possível observar que a linguagem foi desenvolvida com ênfase em legibilidade e organização do código.

import this The Zen of Python , by Tim Peters

Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren ’ t special enough to break the rules. Although practicality beats purity. Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity , refuse the temptation to guess. There should be one - - and spanferably only one -- obvious way to do it. Although that way may not be obvious at first unless you ’ re Dutch. Now is better than never. Although never is often better than * right * now. If the implementation is hard to explain , it ’ s a bad idea. If the implementation is easy to explain , it may be a good idea. Namespaces are one honking great idea -- let ’ s do more of those!

Estes princípios são refletidos nas vantagens citadas anteriormente, como organização, robustez e simplicidade.

Sistemas operacionais como o Linux e o MacOS possuem o Python em seus terminais. Já no caso do Windows, é necessário instalar e adicionar ao PATH. Após a instalação, pode-se proceder como em qualquer outro sistema operacional: para acessar o Python, basta utilizar o comando python no terminal e para sair o comando exit().

$ python

Python 3.7.3 ( v3 .7.3: ef4ec6ed12 , Mar 25 2019 , 22:22:05) [ MSC v .1916 64 bit ( AMD64 ) ] on win Type " help " , " copyright " , " credits " or " license " for more information.

print ( ’ Hello World ’) Hello World exit () $

Os procedimentos de como preparar o ambiente Python, instalações e atualizações serão abordados a seguir.

  1. Preparação

2.1 Instalação

Como mencionado anteriormente, Linux e MacOS já possuem o Python em seus terminais. Assim, é necessário instalar apenas no Windows. Nos outros sistemas operacionais, talvez seja necessário apenas atualizar.

2.1.1 Windows

  1. Para a instalação deve-se abrir o site oficial do Python: https://www.python.org/ e ir em Downloads.

Figura 2.1.1: Clique em Downloads

20 Capítulo 2. Preparação

  1. Selecionar a versão e o instalador adequado para o sistema.

Figura 2.1.2: É recomendado instalar a versão mais recente disponível

Figura 2.1.3: Selecione a opção em destaque

  1. Por fim, basta abrir o instalador e clicar em Install Now. É recomendado marcar as duas caixas de seleção para que também seja possível acessar o Python pelos terminais do Windows.