20 Capítulo 1
e agora?
Estendendo Nosso Programa para Fazer Mais
Vamos estender nosso programa para aprender um pouco mais sobre o Python.
No momento, o programa é executado uma vez, e então termina. Imagine se
quissemos que o programa fosse executado mais de uma vez; digamos, cinco vezes.
Especificamente, vamos executar o “código de verificação do minuto” e a instrução if/
else cinco vezes, pausando um número aleatório de segundos entre cada exibição da
mensagem (apenas para deixar as coisas interessantes). Quando o programa terminar,
cinco mensagens deverão estar na tela, em vez de uma.
Veja o código de novo, com o código que queremos executar várias vezes circulado:
from datetime import datetime
odds = [ 1, 3, 5, 7, 9, 11, 13, 15, 17, 19,
21, 23, 25, 27, 29, 31, 33, 35, 37, 39,
41, 43, 45, 47, 49, 51, 53, 55, 57, 59 ]
right _ this _ minute = datetime.today().minute
if right _ this _ minute in odds:
print("This minute seems a little odd.")
else:
print("Not an odd minute.")
Vamos ajustar o
programa para
executar o código
várias vezes.
O que precisamos fazer:
Faça um loop no código circulado.
Um loop permite iterar qualquer suíte, e o Python fornece várias maneiras de fazer
exatamente isso. Neste caso (e sem entender o motivo), usaremos o loop for do
Python para iterar.
1
Pause a execução.
O módulo time padrão do Python fornece uma função chamada sleep que pode
pausar a execução por um número indicado de segundos.
2
Gere um número aleatório.
Felizmente, outro módulo do Python, random, fornece uma fuão chamada
randint, que podemos usar para gerar um número aleatório. Usaremos randint
para gerar um número entre 1 e 60, e então usaremos esse número para pausar a
execução de nosso programa em cada iterão.
3
Agora sabemos o que queremos fazer. Mas há um
modo preferido de fazer essas alterações?
CG_HeadFirst_Python.indb 20 18/07/2018 13:17:45

Get USE A CABEÇA! PYTHON now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.