ESTRUTURA DE CONTROLE

if/elif/else
for/else
while/else

try/except /finally/else

SEQUÊNCIA
In [1]:
#!/bin/env python

#A versão 3 do Python não usa mais a tabela ASCII como padrão, dando lugar para as tabelas Unicode
#$ echo $LANG
#pt_BR.ISO8859-1
# O Poeta
print ('O Bicho\n\
\n\
Vi ontem um bicho\n\
Na imundície do pátio\n\
Catando comida entre os detritos.\n\
\n\
Quando achava alguma coisa,\n\
Não examinava nem cheirava:\n\
Engolia com voracidade.\n\
\n\
O bicho não era um cão,\n\
Não era um gato,\n\
Não era um rato.\n\
\n\
O bicho, meu Deus, era um homem.\n\
\n\
"Manuel Bandeira"')
O Bicho

Vi ontem um bicho
Na imundície do pátio
Catando comida entre os detritos.

Quando achava alguma coisa,
Não examinava nem cheirava:
Engolia com voracidade.

O bicho não era um cão,
Não era um gato,
Não era um rato.

O bicho, meu Deus, era um homem.

"Manuel Bandeira"

ESTRUTURA IF
if <condição 1>: elif <condição 2>: elif <condição 3>: ... else:


if <condição 1>:

elif <condição 2>:

elif <condição 3>:
...
else:

if <condição 1>:
    <comandos>
elif <condição 2>:
    <comandos>
elif <condição 3>:
    ...
else:
    <comandos>
In [2]:
idade = int(input('Digite sua idade: '))
if idade >= 10 and idade < 20:
    print('Você é adoslecente')
elif idade >= 20 and idade < 30:
    print('Você é jovem')
elif idade >= 30 and idade <= 100:
    print('Você é adulto')
else:
    print('Valor não encontrado!')
Digite sua idade: 
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-2-8b2e1c8ef470> in <module>()
----> 1 idade = int(input('Digite sua idade: '))
      2 if idade >= 10 and idade < 20:
      3     print('Você é adoslecente')
      4 elif idade >= 20 and idade < 30:
      5     print('Você é jovem')

ValueError: invalid literal for int() with base 10: ''

ESTRUTURA FOR
for in : ... break ... continue else:

for in :

...
break
...
continue
else:


for <variável> in 
    <comandos> 
...
break
...
continue
else:
<comandos>
In [3]:
nomes = ['Pedro', 'João', 'Leticia']
for n in nomes:
    print(n)
Pedro
João
Leticia
In [4]:
for key, value in enumerate(["p", "y", "t", "h", "o", "n"]):
    print (key, value)
0 p
1 y
2 t
3 h
4 o
5 n
In [5]:
for i in range(5):
    print(i)
0
1
2
3
4
In [6]:
# EXEMPLO: Calendário
semana = ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sab']
for s in semana:
   print (s)
for d in range(30):
   if (d+1) % 7 == 0:
     print ('%4s' % (d+1))
   else:
     print ('%4s' % (d+1),)
dom
seg
ter
qua
qui
sex
sab
   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
In [ ]:
import calendar

mes = int(input('Digite o numero do mês: ') )  #2

if mes >=1 and mes <=12:              #3
    cal = calendar.month(2012, mes)   #4
    print ("Esse é o Calendário do mês",mes)
    print ('--------------------------------')  #5
    print (cal)             #6
else:
    print ('Entrada invalida' )        #7

ESTRUTURA WHILE
while : ... break ... continue else:


while_stmt ::= “while” expression “:” suite
                     [“else” “:” suite]

expression ::= conditional_expression | lambda_expr
suite ::= stmt_list NEWLINE | NEWLINE INDENT statement+ DEDENT
lambda_expr ::= “lambda” [parameter_list]: expression

conditional_expression ::= or_test [“if” or_test “else” expression]
or_test ::= and_test | or_test “or” and_test
and_test ::= not_test | and_test “and” not_test
not_test ::= comparison | “not” not_test

statement ::= stmt_list NEWLINE | compound_stmt
stmt_list ::= simple_stmt (“;” simple_stmt)* [“;”]

while :

...
break
...
continue
else:



while <contição>:
<comandos>
...
break
...
continue
else:
<comandos>
count = 0 while count <= 5: print(count) count += 1
In [8]:
count = 0
while count <= 5:
    print(count)
    count += 1
    if count > 3: break
0
1
2
3
In [ ]:
i= 0
while i < 100:
    if i % 2 == 0:
        continue
    print (i)
print (i)