• Roger Sampaio

Dominando Python: Aula 19 Exceções (Try ... Except) Parte 1

Atualizado: 13 de nov.

Olá. Segue mais aula do curso DOMINANDO PYTHON. Erros são bastante comuns ao construir ou executar programas, devemos reduzi-los ao máximo possível. Um valor digitado incorretamente pelo usuário pode prejudicar muito o bom comportamento do seu aplicativo. Abordaremos nessa aula como tratá-los através de exceções, aprendendo utilizar os comandos try, except, finally, raise. Beijo no coração.

O GIT está aqui.

Saiba mais sobre exceções lendo esse excelente artigo.

E por fim segue um quiz para praticar. Lembre-se programar envolve muita prática. Enquanto mais você praticar, melhor se tornará. O quiz tem questões sobre tratamento de exceções e erros, strings, loops, funções, comandos condicionais, criação de variáveis, conversão de tipos de variáveis e atribuições, listas, tuplas e dicionários. As respostas estarão disponíveis na próxima aula. Boa sorte.



Q1 - Considere a seguinte lista em Python:

# Criação 
listaValores = list(range(0,10))
# Verificando o tipo de estrutura
type(listaValores)
# Percorrendo 

Se quisermos mostrar todos os valores pares na lista na linha 6, uma possibilidade é?

a)

for item in listaValores:
    if (item // 2 == 0):
        print(item)

b)

for item in listaValores:
    if (item not in (0,2,4,6,8)):
        print(item)

c)

for item in listaValores:
if (item % 2 == 0):
        print('O valor é %d ' % (item))

d)

for item in listaValores:
    if (item % 2 == 0):
        print(item)

Q2 - Profissionais da área de saúde, especialmente os nutricionistas, estão constantemente avaliando o peso das pessoas, para verificar se está normal ou não. Um dos indicadores utilizados é o IMC (índice de massa corpórea), que considera a altura e o peso do individuo e atribuí uma classificação:

Magreza, quando o resultado é menor que 18,5 kg/m2;

Normal, quando o resultado está entre 18,5 e 24,9 kg/m2;

Sobrepeso, quando o resultado está entre 24,9 e 30 kg/m2;

Obesidade, quando o resultado é maior que 30 kg/m2.

O cálculo do IMC é dado por: peso/ (altura x altura). Peso e altura são dados em metros.

Considerando que foi construído o seguinte programa em Python para atender o problema de negócio:

altura = float(input('Informe sua altura: '))
peso = float(input('Informe seu peso: '))
imc = peso/(altura**2)
print('Seu IMC é %2d' % imc)
if(imc <= 18.5):
    print('Magreza')
elif (imc <= 24.9):
    print('Normal')
elif (imc <= 30):
    print('Sobrepeso')
else:
    print('Obesidade')

Considere que o usuário informou para a altura o valor de 1.80 e para o peso 80. Qual será o resultado ao executar o programa?

a)

Seu IMC é 24
Normal

b)

Seu IMC é 30.6
Sobrepeso

c)

Seu IMC é 17.4
Magreza

d)

Há um erro de sintaxe no programa, que impede de ser executado.

Q3 - Ao ser criada a função abaixo:

def verificaPar(num):
    return num % 2 == 0

Qual das opções abaixo, é uma chamada inválida para a função acima?

a)

verificaPar(200**2) 

b)

verificaPar(float(input('Digite o valor a ser consultado: '))) 

c)

import math as m
verificaPar(m.pi)

d)

verificaPar() 

Q4 - Observe o seguinte trecho escrito em Python:

import math as matematica
listaQualquer = [matematica.pi, "onça", "Carlos Sousa", 18**3, True,[ ],[45,11,'sexo masculino'],6.1]
print(45 in listaQualquer);
print('onça' in listaQualquer);
print(18**3 in listaQualquer);
print(3.14 in listaQualquer);

Ao executar o programa, o resultado será?

a)

True
True
True
False

b)

False
True
True
False 

c)

False
True
True
True

d)

False
True
False
False

Q5 -

Dado o seguinte código em Python:

listaAnimais = ['macaco','gato','cachorro','zebra','vaca']
for i in range(0,len(listaAnimais)):
    print(listaAnimais[i+1])

O que ocorrerá ao executar o código acima?

a)

Mostrará na tela todos os animais a partir do gato, isto é:

gato
cachorro
zebra
vaca

b)

Mostrará na tela todos os animais, a partir do macaco, isto é:

macaco
gato
cachorro
zebra
vaca

c)

Mostrará um erro de sintaxe na tela, porque a correta declaração para listas é parênteses e não cochetes. O correto seria:

listaAnimais = ('macaco','gato','cachorro','zebra','vaca')

d)

Mostrará todos os animais a partir de gato, porém ocorrerá uma exceção do tipo IndexError.


Beijos de luz.


8 visualizações0 comentário

Posts recentes

Ver tudo