Você está na página 1de 33

Curso Online:

Programação de Python
Programação em Python.....................................................................................2

Como funciona a sintaxe básica do Python........................................................5

Configuração do ambiente...................................................................................7

Primeiros passos com Python.............................................................................9

Indentação no Python........................................................................................11

Operadores de atribuição..................................................................................14

Operadores Aritméticos.....................................................................................16

Condicional if-else e if-elif-else..........................................................................18

For-else e While-else.........................................................................................20

Tratamento de exceções...................................................................................23

Orientação a Objetos no Python.......................................................................25

Referências bibliográficas.................................................................................29

1
PROGRAMAÇÃO EM PYTHON

Python é uma linguagem de programação de alto nível, interpretada,


de script, imperativa, orientada a objetos, funcional, de tipagem dinâmica e
forte. Foi lançada por Guido van Rossum em 1991. Atualmente possui um
modelo de desenvolvimento comunitário, aberto e gerenciado pela organização
sem fins lucrativos Python Software Foundation. Apesar de várias partes da
linguagem possuírem padrões e especificações formais, a linguagem como um
todo não é formalmente especificada. O padrão de facto é a
implementação CPython.

A linguagem foi projetada com a filosofia de enfatizar a importância do esforço


do programador sobre o esforço computacional. Prioriza a legibilidade do
código sobre a velocidade ou expressividade. Combina uma sintaxe concisa e
clara com os recursos poderosos de sua biblioteca padrão e
por módulos e frameworks desenvolvidos por terceiros.

Python é uma linguagem de propósito geral de alto nível, multiparadigma,


suporta o paradigma orientado a objetos, imperativo, funcional e procedural.
Possui tipagem dinâmica e uma de suas principais características é permitir a
fácil leitura do código e exigir poucas linhas de código se comparado ao
mesmo programa em outras linguagens. Devido às suas características, ela é
principalmente utilizada para processamento de textos, dados científicos e
criação de CGIs para páginas dinâmicas para a web. Foi considerada pelo
público a 3ª linguagem "mais amada", de acordo com uma pesquisa conduzida
pelo site Stack Overflow em 2018, e está entre as 5 linguagens mais populares,
de acordo com uma pesquisa conduzida pela RedMonk.

O nome Python teve a sua origem no grupo humorístico britânico Monty


Python,[8] criador do programa Monty Python's Flying Circus, embora muitas
pessoas façam associação com o réptil do mesmo nome
(em português, píton ou pitão).

2
A tipagem de Python é forte, pois os valores e objetos têm tipos bem definidos
e não sofrem coerções como em C ou Perl. São disponibilizados diversos tipos
de dados nativos:

O Python 3 define as seguintes palavras reservadas:

False None True and as


assert break class continue
def del elif else except
finally for from global if
import in is lambda not
nonlocal or pass raise try
return while with yield

No segundo capítulo do Manual de Referência da Linguagem Python é citado


que a análise léxica é uma análise do interpretador em si, os programas são
lidos por um analisador sintático que divide o código em tokens.

Todo programa é dividido em linhas lógicas que são separadas


pelo token NEWLINE ou NOVA LINHA, as linhas físicas são trechos de código
divididos pelo caractere ENTER. Linhas lógicas não podem ultrapassar linhas
físicas com exceção de junção de linhas, por exemplo:

3
if resultado > 2 and \
1 <= 5 and \
2 < 5:
print ('Resultado: %f' % d)

ou

MESES_DO_ANO = ['janeiro', 'fevereiro', 'março',


'abril', 'maio', 'junho',
'julho', 'agosto', 'setembro',
'outubro', 'novembro', 'dezembro']

Para a delimitação de blocos de códigos, os delimitadores são colocados em


uma pilha e diferenciados por sua indentação, iniciando a pilha com valor 0
(zero) e colocando valores maiores que os anteriores na pilha. Para cada
começo de linha, o nível de indentação é comparado com o valor do topo da
pilha. Se o número da linha for igual ao topo da pilha, a pilha não é alterada. Se
o valor for maior, a pilha recebe o nível de indentação da linha e o
nome INDENT (empilhamento). Se o nível de indentação for menor, então é
desempilhado até chegar a um nível de indentação recebendo o
nome DEDENT (desempilhamento). Se não encontrar nenhum valor, é gerado
um erro de indentação.

Abaixo um exemplo de permutação, retirado do capítulo 2.1 sobre Estrutura de


linhas na Análise léxica do Manual de Referência da linguagem (Language
Reference Manual):

def perm(l): NOVA LINHA


INDENT if len(l) <= 1: NOVA LINHA
INDENT return[1] NOVA LINHA
DEDENT r = [ ] NOVA LINHA
for i in range(len(l)): NOVA LINHA
INDENT s = l[:i] + l[i+1:] NOVA LINHA
p = perm(s) NOVA LINHA
DEDENT for x in p: NOVA LINHA
INDENT r.append(l[i:i+1]+x) NOVA LINHA
DEDENT return r

4
COMO FUNCIONA A SINTAXE BÁSICA DO PYTHON

Uma variável não pode ser utilizada em uma expressão sem ter sido
inicializada

Não existe ―criação automática‖ de variáveis.

Exemplo de atribuição:

reais = euros * taxa

As variáveis euros e taxa devem ser inicializadas, se não o erro name


'euros' is not defined será exibido.

Em Python, None equivale ao valor nulo (null).

Podemos iniciar as variáveis com o valor None.

reais = None

Saídas: Saída simples válido para a versão 3 de Python.

print("Welcome to Python!")

Endentação: Python usa endentação como delimitação de bloco, portanto


devemos endentar corretamente o código fonte.

5
Entradas:

name = input("What is your name?")

quest = input("What is your quest?")

color = input("What is your favorite color?")

print("Ah, so your name is %s, your quest is %s, " \

"and your favorite color is %s." % (name, quest, color) )

Python usa endentação como delimitação de bloco. comandos que aceitam


blocos:

if/elif/else

for/else

while/else

def

try/except /finally/else

class

with

Se o bloco tem apenas um comando, pode-se escrever tudo em uma linha:

if n < 0: print('Valor inválido')

6
CONFIGURAÇÃO DO AMBIENTE

As instruções de instalação do Python variam de acordo com o sistema


operacional. Siga o guia do sistema operacional que você está executando no
ambiente de desenvolvimento, seja MacOS, Windows ou Linux.

O macOS inclui uma versão do Python por padrão e a utiliza para seus próprios
propósitos. Para evitar interferência com o macOS, recomendamos criar um
ambiente de desenvolvimento separado e instalar a versão mais recente do
Python. Para instalar o Python, use o homebrew.

Para usar o homebrew para instalar pacotes do Python, você precisa de um


compilador, que pode ser instalado instalando ferramentas de linha de
comando do Xcode (em inglês).

xcode-select –install

Instale o homebrew seguindo as instruções na página inicial do homebrew (em


inglês) e use-o para instalar o Python da seguinte maneira:

brew install python

Após a conclusão das instalações, verifique se o Python 3 está disponível


como python e python3 e se o pip também está instalado.

Para verificar se o Python está disponível, execute o seguinte comando:

python –version

A saída mostrará a versão. Saiba mais sobre a versão mais recente do Python
homebrew na página Fórmula de Python do Homebrew (em inglês).

Para verificar se o pip está disponível, execute o seguinte comando:

pip –version

7
As saídas mostram as versões. Saiba mais sobre a versão mais recente do pip
nas Notas da versão do pip.

O Homebrew instala as versões mais recentes do Python disponíveis na sua


plataforma via Homebrew. Os números de versão nas saídas podem ser
diferentes das versões oficiais mais recentes do Python.

As bibliotecas de cliente do Cloud para Python são a integração dos


desenvolvedores do Python com os serviços do Google Cloud, como o
Datastore e o Cloud Storage. Para instalar o pacote para uma API individual,
como o Cloud Storage, use um comando semelhante ao seguinte:

pip install --upgrade google-cloud-storage

Para o download do Python 3 para sitemas de 32 bits. Para o instalador de 64


bits, acesse e selecione o instalador de 64 bits apropriado.

Faça o download do instalador executável do Windows (32 ou 64 bits) e clique


duas vezes nele para iniciar o assistente de instalação do python.

O processo de instalação é bem simples:

1. Marque a opção "Add Python to PATH"


2. Clique em "Install Now"

A tela será mostrada. Aguarde enquanto o instalador completa o processo de


instalação.

Se tudo ocorrer bem, a próxima tela será mostrada. Clique em "Close".

Para verificar se a instalação do Python foi bem-sucedida, pesquise no menu


iniciar por "cmd" e clique duas vezes para abri-lo.

Digite o seguinte comando:

python --version

Este comando retornará a versão do python que está instalada em sua


máquina.

8
PRIMEIROS PASSOS COM PYTHON

Na página http://www.python.org/download/ você encontra links para baixar o


interpretador adequado para o seu computador. No caso do Windows, o
instalador .msi da versão atual do Python tem cerca de 11 MB.

Toda programação de computadores é feita através de uma ou mais


linguagens de programação, portanto não é possível aprender a programar
sem aprender ao menos uma linguagem de programação. Nossa meta não é
mostrar como se programa em uma linguagem específica, mas sim como se
programa de uma forma geral. Ou seja, a linguagem para nós será um veículo,
e não o destino. Mesmo assim, pensamos bastante antes de escolher uma
linguagem para este tutorial, e optamos por Python.

Centenas de linguagens já foram criadas desde que o computador eletrônico


foi inventado nos anos 40. Algumas já são línguas mortas. Outras, como C++ e
Java, são peças fundamentais no desenvolvimento da economia digital. No
entanto, a complexidade dessas duas linguagens nos motivou a descartá-las, e
focalizar o universo das chamadas linguagens de "scripting", que são mais
simples e se prestam a um estilo de programação exploratória, mais
sintonizado com um tutorial como esse.

 Leitura Complementar:

Livro: Python 3: Conceitos e aplicações :

Uma abordagem didática

Autor: Sérgio Luiz Banin (Coeditor)

Editora: Ética

9
O livro escolhido para leitura complementar é destinado a iniciantes em
programação de computadores e profissionais da área que desejam ampliar
seus conhecimentos, esta obra fornece um aprendizado didático e consistente,
com exemplos e exercícios práticos. São abordados elementos de Python 3,
como objetos simples; objetos estruturados strings, listas, tuplas, conjuntos e
dicionários; comandos de entrada e saída, controle de fluxo do programa,
funções, leitura e gravação de arquivos. Destaca o uso e o gerenciamento de
bancos de dados em SQL, leitura e gravação de arquivos e inclui dois projetos
completos e funcionais, descritos em detalhes, para fixação do aprendizado. A
iEstudar se peocupa com o aprendizado do aluno. Leia sempre mais livros.

A melhor forma de aprender a programar é usando um interpretador em modo


interativo. Dessa forma você pode digitar comandos linha por linha e observar a
cada passo como o computador interpreta e executa esses comandos. Para
fazer isso em Python, há duas maneiras:

1-executar o interpretador em modo texto (chamado "Python (command line)"


no Windows, ou simplesmente python no Linux)

2-usar o IDLE, que é um ambiente baseado em janelas.

Seja qual for o interpretador que você escolheu, ao executá-lo você verá uma
mensagem com informações de copyright mais ou menos como essa:

Python 2.5.1 (r251:54863, Oct 5 2007, 13:50:07)


[GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

O símbolo ">>>" exibido pelo interpretador é o que os americanos chamam de


"prompt", que alguns traduzem por "aviso", mas nós vamos chamar de "deixa"
(em teatro, o termo "prompt" é a deixa que indica ao ator a hora de dizer ou
fazer algo; em computação, o prompt informa o usuário que o sistema está
pronto para receber um novo comando).

Para sair do interpretador você pode fechar a janela do IDLE, ou


teclar [CTRL]+[D] (no IDLE ou no interpretador em UNIX) ou [CTRL]+[Z] e
então [ENTER] (no interpretador DOS).

10
INDENTAÇÃO NO PYTHON

Indentação é esse espaçamento dado para a direita em relação ao código de


primeiro nível hierárquico. É uma boa prática em qualquer linguagem de
programação indentar os códigos para que eles fiquem mais legíveis, mais
organizados, e Python achou uma forma de casar isso com a criação de blocos
de códigos.

A linguagem meio que nos força a organizar nosso código com a indentação
pois caso os blocos não sejam indentados, o console irá gerar erros de
indentação.

Imagem: bastter.com

Em ciência da computação, indentação (recuo, neologismo derivado da palavra


em inglês indentation) é um termo aplicado ao código fonte de
um programa para ressaltar ou definir a estrutura do algoritmo.

Na maioria das linguagens de programação, a indentação é empregada com o


objetivo de ressaltar a estrutura do algoritmo, aumentando assim a legibilidade
do código. Em algumas linguagens, entretanto, a indentação é
obrigatória. Python, Occam e Haskell, por exemplo, utilizam a mudança de
indentação para definir a hierarquia dentre blocos de código.

11
Um exemplo do emprego de indentação em C.

12
A sintaxe de uma linguagem são as regras que nos dizem como escrever um
código para que ele seja compilado sem erros. A seguir, veremos algumas
dentre as principais características da sintaxe do Python, com exemplos de
código e explicações. Uma vez que o Python é uma linguagem fácil de
aprender, é possível que ao final desse artigo você já possa escrever os seus
primeiros códigos com a mesma.

Conhecer a sintaxe do Python é muito importante para escrever programas que


funcionem corretamente. Uma vez que essa é uma linguagem diferente das
demais em muitos aspectos, muitos dos conceitos apresentados aqui podem
não ser óbvios e representam armadilhas para os iniciantes. Com esse artigo
em mãos, principalmente se você vem de uma linguagem baseada em C, o
aprendizado do Python poderá ser mais agradável e ágil.

Para implantar a imagem do contêiner, siga estas etapas:

Implante usando o comando a seguir:

gcloud run deploy --image gcr.io/PROJECT-ID/helloworld --platform


managed

Substitua PROJECT-ID pelo ID do projeto do GCP. Para ver o ID do projeto,


execute o comando gcloud config get-value project.
a. O nome do serviço será solicitado: pressione Enter para aceitar o nome
padrão, helloworld.
b. Você receberá uma solicitação de região: selecione a região de sua escolha,
por exemplo, us-central1.
c. Você receberá uma solicitação para permitir chamadas não autenticadas:
responda y.

Aguarde alguns instantes até a conclusão da implantação. Em caso de


sucesso, a linha de comando exibe o URL de serviço.

13
OPERADORES DE ATRIBUIÇÃO

Um exemplo simples de 4 + 5 = 9.

Exemplo, 4 e 5 são chamados operandos, operador "+" é chamado.

Linguagem Python suporta os seguintes tipos de operadores:

 operadores aritméticos
 comparação (relacionamento) operador
 operadores de atribuição
 operadores lógicos
 operadores bit a bit
 operador de membro
 operador de identidade
 precedência de operador

O seguintes premissas variável a é 10, b é variável 20:

Operadores Descrição Exemplos

+ Plus - dois objetos são adicionados a + b saída 30

- Guardar - se um número negativo é subtraído do outro a - b saída -10


número ou

* Multiply - multiplicar dois números ou retorna a seqüência a * b saída 200


repetida várias vezes

/ Além disso - x y dividida pela b / a saída 2

% Modulo - retorna o resto da divisão b% uma saída de 0

14
** Power - retorna x elevado à potência de y a ** b 10 20 th poder, a
saída
100000000000000000000

// Tome divisível - Retorna a parte inteira do quociente 9 // 2 saída 4, saída de


9,0 // 2,0 4,0

Primitivas da linguagem: Conjuntos de elementos básicos da linguagem, como


números, caracteres, operadores aritiméticos, operadores lógicos, etc.

Mecanismos de combinação: Formas de se combinar elementos básicos da


linguagem para formar expressões mais complexas. Por exemplo, podemos ter
uma expressão como a seguinte, combinando vários tipos de operações na
linguagem: (a + b > 10) or (p and q).

Mecanismos de abstração: Formas de se usar combinações de elementos da


linguagem como se fossem elementos primitivos. Nesta categoria entram
variáveis, funções, classes, módulos e bibliotecas. A maior parte do nosso
estudo de algoritmos e programação se concentra em como criar abstrações a
partir de componentes primitivos da linguagem e em usá-las para resolver
problemas do mundo real.

Exemplos de expressões matemáticas em Python:

# Soma e subtração
print(10 + 2 - 7)

# Potência: 2 ^ 4
print(2 ** 4)

# Divisão de ponto flutuante


print(20 / 6)

# Divisão inteira, sem considerar o resto


print(20 // 6)

15
OPERADORES ARITMÉTICOS

Qualquer outra linguagem de programação, subtração, multiplicação, e


operadores de divisão podem ser usados com números.

número = 1 + 2 * 3 / 4.0

Outro operador disponível é o operador de módulo (%), que retorna o número


que é o resto da divisão. Dividendo % divisor = resto.

resto = 11 % 3

Usar dois símbolos de multiplicação forma um relacionamento de potenciação.

quadrado = 7 ** 2

cubo = 2 ** 3

Listas podem ser combinadas com operadores de adição:

numeros_pares = [2,4,6,8]

numeros_impares = [1,3,5,7]

todos_numeros = numeros_impares + numeros_pares

Assim como em strings, Python suporta a formação de novas listas com uma
sequência repetida usando o operador de multiplicação:

print [1,2,3] * 3

Para prever o resultado de uma expressão com vários operadores, além de


conhecer o que cada operador faz (como soma e multiplicação), é necessário
conhecer as regras de precedência dos operadores e também
sua associatividade.

16
A tabela a seguir mostra a associatividade das principais operações aritméticas
em Python, em ordem decrescente de precedência (da maior para a menor):

Tabela de precedência e associatividade de operadores aritméticos

Operador descrição Associatividade

() parênteses da esquerda para a direita

** potência da direita para a esquerda

+, - positivo e negativo unário da direita para a esquerda

*, /, //, % multiplicação , divisão, divisão inteira e resto da esquerda para a direita

+, - soma e subtração da esquerda para a direita

O interpretador interativo é uma característica diferencial da linguagem, porque


há a possibilidade de testar o código de um programa e receber o resultado em
tempo real, antes de iniciar a compilação ou incluí-las nos programas. Por
exemplo:

>>> 1+1
2
>>>
>>> a = 1+1
>>> print a
2
>>> print(a)
2
>>>

17
CONDICIONAL IF-ELSE E IF-ELIF-ELSE

A palavra reservada if seguida de um par de parênteses.

Um teste condicional, localizado dentro dos parênteses (normalmente "este


valor é maior que esse", ou "este valor existe"). Esta condição pode fazer uso
dos operadores de comparação que discutimos no último módulo, e podem
retornar true ou false.

Um par de chaves, e dentro dele temos código — pode ser qualquer código
que queiramos, e só vai ser executado se o teste condicional retornar true.

A palavra reservada else.

Outro par de chaves, dentro dele temos mais um pouco de código — pode ser
qualquer código que queiramos, e só vai executar se o teste condicional
retornar um valor diferente de true, neste caso not true, ou false.

Este tipo de código é bem legível por seres humanos — ele diz: "if a condição
for true, execute o bloco de código A, else execute o bloco de código B" (se a
condição for verdadeira, execute o bloco de código A, senão execute o bloco
de código B).

Você precisa saber que não é obrigado a colocar a palavra reservada else e e
o segundo bloco de par de chaves. O código apresentado a seguir é
perfeitamente válido e não produz erros:

if (condicao) {
codigo para executar se a condição for verdadeira
}

código a ser executado

18
Entretanto, você precisa ser cauteloso aqui — neste caso, repare que o
segundo bloco de código não é controlado pela declaração condicional, então
ele vai executar sempre, independente do teste condicional
retornar true ou false. É claro, isto não é necessariamente uma coisa ruim, mas
isso pode não ser o que você quer — com muita frequência você vai querer
executar ou um bloco de código ou outro, não os dois juntos.

Por fim, você verá muitas vezes declarações if...else escritas sem as chaves,
no seguinte estilo de escrita:

if (condicao) executar aqui se for verdadeira


else executar este outro codigo

Este é um código perfeitamente válido, mas não é recomendado — ele facilita


que você escreva código fora do escopo do if e do else, o que seria mais difícil
se você estivesse usando as chaves para delimitar os blocos de código, e
usando multiplas linhas de código e identação.

 Leitura Complementar:

Livro: Use a Cabeça! Python

Autor: Barry (Autor), Paul (Autor),

Eveline MacHado (Tradutor)

Editora: Paul Barry

19
FOR-ELSE E WHILE-ELSE

Comando de controle de fluxo é o if. Por exemplo:

>>>
>>> x = int(raw_input("Favor digitar um inteiro: "))
Favor digitar um inteiro: 42
>>> if x < 0:
... x = 0
... print 'Negativo alterado para zero'
... elif x == 0:
... print 'Zero'
... elif x == 1:
... print 'Unidade'
... else:
... print 'Mais'
...
Mais

Pode haver zero ou mais seções elif, e a seção else é opcional. A palavra-
chave elif é uma abreviação para ‗else if‘, e é útil para evitar indentação
excessiva. Uma sequência if ... elif ... elif ... substitui as
construções switch ou case existentes em outras linguagens.

Em Python, o PEP 8 tornou-se o guia de estilo adotado pela maioria dos


projetos; ele promove um estilo de codificação muito legível e visualmente
agradável. Todo desenvolvedor Python deve lê-lo em algum momento; aqui
estão os pontos mais importantes:

Use 4 espaços de recuo, e nenhum tab.

4 espaços são um bom meio termo entre indentação estreita (permite maior
profundidade de aninhamento) e indentação larga (mais fácil de ler). Tabs
trazem complicações; é melhor não usar.

Quebre as linhas de modo que não excedam 79 caracteres.

Isso ajuda os usuários com telas pequenas e torna possível abrir vários
arquivos de código lado a lado em telas maiores.

20
Deixe linhas em branco para separar as funções e classes, e grandes blocos
de código dentro de funções.

Quando possível, coloque comentários em uma linha própria.

Escreva docstrings.

Use espaços ao redor de operadores e após vírgulas, mas não diretamente


dentro de parênteses, colchetes e chaves: a = f(1, 2) + g(3, 4).

Nomeie suas classes e funções de modo consistente; a convenção é


usar CamelCase (literalmente, CaixaCamelo) para classes
e caixa_baixa_com_underscores para funções e métodos. Sempre
use self como nome do primeiro parâmetro formal dos métodos de instância
(veja Primeiro contato com classes para saber mais sobre classes e métodos).

Não use codificações exóticas se o seu código é feito para ser usado em um
contexto internacional. ASCII puro funciona bem em qualquer caso. (N.d.T.
para programadores de língua portuguesa, UTF-8 é atualmente a melhor
opção, e já se tornou o default em Python 3 conforme o PEP 3120).

Frequentemente, computadores são utilizados para automatizar tarefas


repetitivas. Repetir tarefas, idênticas ou similares, sem cometer erros, é algo
que computadores fazem bem melhor que pessoas. Devido à iteração ser tão
comum, Python disponibiliza diversos recursos para torná-la mais fácil.

Uma das formas de iteração em Python é a declaração while. Abaixo, temos


um programa simples que faz uma contagem regressiva, partindo de cinco, e
depois diz ―Lançar!‖.

A declaração while quase pode ser lida como se fosse um texto comum (escrito
em português). Em português, teríamos algo como: ―Enquanto n for maior que
0, mostre o valor de n e então subtraia 1 desse valor. Quando atingir o valor 0,

21
saia da declaração while e mostre a palavra Lançar!‖. De maneira mais formal,
o fluxo de execução da declaração while seria:

1. Análise da condição, retornando um valor True ou False.

2. Se a condição for falsa, saia da declaração while e prossiga com as


declarações seguintes.

3. Se a condição for verdadeira, execute o bloco while e então retorne ao passo


1.

Esse bloco de instruções é chamado de laço, pois o terceiro passo faz retornar
ao primeiro. Nomeamos de iteração cada vez em que as instruções dentro de
um laço são executadas. Para o programa anterior, podemos dizer que ―ele
teve cinco iterações‖, ou seja, o corpo do laço foi executado cinco vezes.

O corpo do laço normalmente deve alterar o valor de uma ou de mais variáveis,


de forma que, eventualmente, a condição de execução se torne falsa e a
repetição se encerre. Chamamos essa variável que tem seu valor alterado em
cada execução do laço e controla quando ele deve terminar de variável de
iteração. Se não houver uma variável de iteração, o loop se repetirá
eternamente, resultando em um laço infinito.

A condição do laço é True, que sempre é verdadeira, então ele é executado


repetidamente até atingir a estrutura break. A cada repetição, ele solicita uma
entrada do usuário mostrando um sinal de ―menor que‖. Se o usuário digita
pronto, o comando break sai do laço. Caso contrário, o programa ecoa tudo o
que o usuário digita e volta para o primeiro passo. Aqui vemos um exemplo da
execução:

Essa forma de escrever laços while é comum, pois você pode checar a
condição em qualquer lugar do bloco (não apenas no topo) e você pode
expressar a condição de parada afirmativamente (―pare quando isso acontece‖)
melhor do que negativamente (―continue até que aquilo aconteça‖).

22
TRATAMENTO DE EXCEÇÕES

Quando executamos esse trecho de código no interpretador, nós recebemos


um novo aviso do Python, pensamos ―oops‖ e passamos para nossa próxima
declaração. Entretanto, se você colocar esse código num programa em Python
e esse erro ocorre, seu programa para imediatamente com um ―Traceback‖
indicando tal erro. Isso faz com que os próximos comandos não sejam
executados.

Um simples programa que converte uma temperatura em Fahrenheit para


Celsius:

Se executarmos esse código e inserirmos uma entrada inválida, ele


simplesmente falha, mostrando uma mensagem de erro não amigável:

23
Existe uma estrutura de execução condicional interna ao Python para
manipular esses tipos de erros esperados e inesperados chamada ―try /
except‖. A ideia de ‗try‘ e ‗except‘ é de você saber que alguma sequência de
instruções pode ter um problema e você quer adicionar alguns comandos para
serem executados caso um erro ocorra. Esses comandos extra (o bloco
‗except‘) são ignorados se não houver erro.

Poderá pensar na ferramenta ‗try‘ e ‗except‘ no Python como sendo uma


―apólice de seguro‖ sobre uma sequência de instruções. Podemos reescrever
nosso conversor de temperatura da seguinte forma:

O Python começa executando a sequência de instruções que estão no bloco


‗try‘. Se tudo ocorrer bem, pula-se o bloco ‗except‘ e o programa continua. Se
uma exceção ocorrer no bloco ‗try‘, o Python sai desse bloco e executa os
comandos no bloco ‗except‘.

O ato de tratar uma exceção com um comando ‗try‘ é chamado de capturar


uma exceção. Nesse exemplo, a condição ‗except‘ mostra uma mensagem de
erro. Geralmente, capturar uma exceção te dá a chance de resolver um
problema, ou de tentar novamente, ou de, pelo menos, encerrar seu programa
graciosamente.

24
ORIENTAÇÃO A OBJETOS NO PYTHON

No e-book de Charles R. Severance, Python para Todos, encontramos um bom


exemplo de objetos e valores, e apresentamos abaixo.

Se nós executarmos estas atribuições:

Sabemos que ambos a e b se referem a uma string, mas não sabemos se eles
se referem à mesma string. Existem dois estados possíveis:

Em um caso, a e b referem-se a dois objetos diferentes que possuem o mesmo


valor. No segundo caso, eles se referem ao mesmo objeto. Para verificar se
duas variáveis se referem ao mesmo objeto, você pode usar o operador is.

Neste exemplo, o Python criou apenas uma string objeto, e tanto a quanto b se
referem a ele. Mas quando você cria duas listas, você obtém dois objetos:

25
Nesse caso, diríamos que as duas listas são equivalentes, porque elas têm os
mesmos elementos, mas não são idênticas, porque não são o mesmo objeto.
Se dois objetos são idênticos, eles também são equivalentes, mas se forem
equivalentes, eles não são necessariamente idênticos.

Até agora, temos usado ―objeto‖ e ―valor‖ de forma intercambiável, mas é mais
preciso dizer que um objeto tem um valor. Se você executar a = [1,2,3], onde a
refere-se a uma lista de objetos cujo valor é uma sequência particular de
elementos. Se outra lista tiver os mesmos elementos, diremos que ela tem o
mesmo valor.

Se usarmos um dicionário como a sequência em uma instrução for, ela


percorrerá as chaves do dicionário. Este laço mostra cada chave e seu valor
correspondente:

Aqui está como a saída se parece:

Novamente, as chaves não estão em uma ordem particular. Podemos usar este
padrão para implementar vários ―jargões‖ de repetição que descrevemos
anteriormente. Por exemplo, se quisermos encontrar todas as entradas em um
dicionário com valor maior que dez, poderíamos escrever o seguinte código:

26
A iEstudar se preocupa com o aprendizado do aluno. Leia sempre mais livros.

Pesquisamos no mercado bons livros para estudos, e listamos abaixo.

 Leitura Complementar:

Livro: Introdução à Programação com Python:

Algoritmos e Lógica de Programação Para Iniciantes

Autor: por Nilo Ney Coutinho Menezes

Editora: Novatec

Livro: Python Para Análise de Dados:

Tratamento de Dados com Pandas, NumPy e IPython

Autor: por Wes McKinney

Editora: Novatec

Livro: Projetos com Python e Arduino: Como Desenvolver

Projetos Práticos de Eletrônica, Automação e Iot

Autor: Humberto Augusto Piovesana Zanetti,

Claudio Luis Vieira Oliveira

Editora: Ética

27
Agradecemos por escolher a iEstudar.

Blog https://iestudar.com/blog/

Site https://iestudar.com/

28
Referências Bibliográficas

Wikipédia, a enciclopédia livre.Python.

Disponível em:

https://pt.wikipedia.org/wiki/Python

devfuria.com.br python sintaxe-basica.Python - O básico da sintaxe.

Disponível em:

http://devfuria.com.br/python/sintaxe-basica/

Suporte Google Cloud. Como configurar um ambiente de desenvolvimento do


Python.

Disponível em:

https://cloud.google.com/python/setup?hl=pt-br

Python Brasil.Instalando o Python 3 no Windows.

Disponível em:

https://python.org.br/instalacao-windows/

Luciano Ramalho.Aprenda a programar.

Disponível em:

https://wiki.python.org.br/AprendaProgramar

Sérgio Luiz Banin (Coeditor).Python 3: Conceitos e aplicações : Uma


abordagem didática.

29
Disponível em:

https://www.amazon.com.br/Python-Conceitos-Aplica%C3%A7%C3%B5es-
Abordagem-
Did%C3%A1tica/dp/8536527811/ref=asc_df_8536527811/?tag=googleshopp00
-
20&linkCode=df0&hvadid=379748659420&hvpos=&hvnetw=g&hvrand=178731
02483522791408&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=
&hvlocphy=1032069&hvtargid=pla-811137648168&psc=1

@ThiagoDV.1.6 - Python - Indentação e blocos de código.

Disponível em:

https://bastter.com/mercado/forum/863478/16--python--indentacao-e-blocos-de-
codigo

Wikipédia, a enciclopédia livre.Indentação.

Disponível em:

https://pt.wikipedia.org/wiki/Indenta%C3%A7%C3%A3o

DEVMEDIA. Python tutorial: Tour pela linguagem.

Disponível em:

https://www.devmedia.com.br/python-tutorial-tour-pela-linguagem/40646

Google Cloud. Guia de início rápido: compilar e implantar.

Disponível em:

https://cloud.google.com/run/docs/quickstarts/build-and-
deploy?gclid=CjwKCAjw2dD7BRASEiwAWCtCb5xb9mnpxnGLar6nkDv1Tgx-
k3XIdx6lMMHouqkO4N-
W2rT8TZdo8xoCg2UQAvD_BwE&gclsrc=aw.ds#python&utm_source=google&
utm_medium=cpc&utm_campaign=latam-BR-all-pt-dr-skws-all-all-trial-b-dr-
1009133-LUAC0009046&utm_content=text-ad-none-none-DEV_c-
CRE_423672515956-ADGP_SKWS+%7C+Multi+~+Developers+%7C+Python-

30
KWID_43700042069969726-kwd-20962313848-
userloc_1032069&utm_term=KW_%2Bpython-ST_%2BPython

w3big.com.O que é o operador?

Disponível em:

http://www.w3big.com/pt/python/python-operators.html

AP.Operadores e Expressões em Python.

Disponível em:

https://algoritmosempython.com.br/cursos/programacao-python/expressoes-
matematicas

learnpython.org. Operadores Aritméticos.

Disponível em:

https://www.learnpython.org/pt/Operadores_b%C3%A1sicos

Panda. Expressões aritméticas, relacionais e lógicas.

Disponível em:

https://panda.ime.usp.br/cc110/static/cc110/02-expressoes.html

MDN web docs. Tomando decisões no seu código — condicionais.

Disponível em:

https://developer.mozilla.org/pt-
BR/docs/Aprender/JavaScript/Elementos_construtivos/conditionals

© Copyright 1990-2012, Python Software Foundation.Python v2.7.2


documentation » O tutorial de Python ».Mais ferramentas de controle de fluxo.

Disponível em:
31
http://turing.com.br/pydoc/2.7/tutorial/controlflow.html

Suporte Editorial : Elliott Hauser, Sue Blumenberg

Cover Design: Toby Koening

Tradução para Português (PT-BR): Antonio Marcos, Alysson Hyago,

Andhré Carvalho, Arthur Carneiro, Caio Porto,

Debora Nunes, Gabriel Araújo Medeiros, Giovana

Oliveira, João Pedro Melquiades, Lara Sobral,

Maysa Freire, Natã Macedo, Pyettra Feitosa, Victor

Marinho, Vinicius França, Vinicius Formiga, Vitor

Araujo, Yuri Loia

Disponível em:

https://creativecommons.org/licenses/by-nc-sa/3.0/

Charles R. Severance. Python para Todos. Explorando Dados com Python 3.

Disponível em:

http://www.dr-chuck.com/

32

Você também pode gostar