318x Filetype PDF File size 2.62 MB Source: www.ufsm.br
Universidade Federal de Santa Maria
Campus Cachoeira do Sul
Python 101
Autores:
Profª. Drª Ana Luisa Soubhia
Elias Teixeira da Costa
Flavio Luan Müller Freitas
Laís Brum Menezes
Marcos Alves dos Santos
Prof. Dr. Vinícius Maran
Python 101 versão 1.0 - 2019/2
Esta apostila tem como objetivo apresentar um compilado de informações abor-
dadasnosminicursossobrePython ministrados pelos alunos da Universidade Federal
de Santa Maria (UFSM), campus Cachoeira do Sul.
Este material é resultante da primeira etapa do projeto de ensino Cadernos
Digitais para Engenharias - Aplicações em LaTeX, Python e Jupyter, financiado
pela Universidade Federal de Santa Maria (UFSM) através do edital FIEN 2019.
Coordenador do Projeto: Prof. Dr. Vinícius Maran. Contato:
vinicius.maran@ufsm.br
Sugestões sobre o material podem ser informadas nest link.
Este trabalho está licenciado sob uma licença Creative
Commons “Attribution-NonCommercial-ShareAlike 3.0
Unported”.
A
Documento criado em LT X
E
1
Python 101 versão 1.0 - 2019/2
Conteúdo
1 Introdução à linguagem de Programação Python 4
1.1 História . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Aplicações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Compilação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Integrated development environment (IDE) . . . . . . . . . . . . . . . 9
1.5 Por que Python? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.6 Sintaxe da linguagem . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Download e Instalação de Ferramentas para Desenvolvimento 12
2.1 Download e Instalação do Interpretador Python . . . . . . . . . . . . 12
2.2 Baixando e instalando a IDE PyCharm . . . . . . . . . . . . . . . . . 13
3 Conceitos Básicos 20
3.1 Hello World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Expressões aritméticas . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4 Expressões lógicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5 Entrada e Saída de Dados . . . . . . . . . . . . . . . . . . . . . . . . 24
3.6 Atribuição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.7 Bibliotecas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4 Desvios Condicionais (if, elif e else) 34
5 Laços de Repetição 36
5.1 Laço de repetição for . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2 Laço de Repetição while . . . . . . . . . . . . . . . . . . . . . . . . . 38
6 Strings e Conjuntos de Dados 40
6.1 Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6.2 Listas, Tuplas e Dicionários . . . . . . . . . . . . . . . . . . . . . . . 42
6.2.1 Listas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2.2 Tuplas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.2.3 Dicionários . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.3 Matrizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7 Funções 51
8 Programação Orientada a Objetos 55
8.1 Abstração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
8.1.1 Identidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2
Python 101 versão 1.0 - 2019/2
8.1.2 Propriedades . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
8.1.3 Métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8.2 Encapsulamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
8.3 Herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8.4 Polimorfismo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3
no reviews yet
Please Login to review.