{ "metadata": { "name": "Capitulo3_Controle_de_fluxo" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "[Python para Desenvolvedores](http://ricardoduarte.github.io/python-para-desenvolvedores/#conteudo)\n", "===================================\n", "2ª edi\u00e7\u00e3o, revisada e ampliada\n", "-----------------------------------\n", "\n", "Cap\u00edtulo 3: Controle de fluxo\n", "=============================\n", "_____________________________\n", "\u00c9 muito comum em um programa que certos conjuntos de instru\u00e7\u00f5es sejam executados de forma condicional, em casos como validar entradas de dados, por exemplo.\n", "\n", "Sintaxe:\n", "\n", " if :\n", " \n", " elif :\n", " \n", " elif :\n", " \n", " else:\n", " \n", "\n", "Na qual:\n", "\n", "+ ``: senten\u00e7a que possa ser avaliada como verdadeira ou falsa.\n", "+ ``: sequ\u00eancia de linhas de comando.\n", "+ As clausulas `elif` e `else` s\u00e3o opcionais e podem existir v\u00e1rios `elifs` para o mesmo `if`, por\u00e9m apenas um else ao final.\n", "+ Par\u00eanteses s\u00f3 s\u00e3o necess\u00e1rios para evitar ambiguidades.\n", "\n", "Exemplo:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "temp = 23 # valor de temperatura usado para teste\n", "\n", "if temp < 0:\n", " print 'Congelando...'\n", "elif 0 <= temp <= 20:\n", " print 'Frio'\n", "elif 21 <= temp <= 25:\n", " print 'Normal'\n", "elif 26 <= temp <= 35:\n", " print 'Quente'\n", "else:\n", " print 'Muito quente!'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Normal\n" ] } ], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Imagine que no programa acima, `23` \u00e9 a temperatura que foi lida de algum sensor ou entrada manualmente pelo usu\u00e1rio e `Normal` \u00e9 a resposta do programa.\n", "\n", "Se o bloco de c\u00f3digo for composto de apenas uma linha, ele pode ser escrito ap\u00f3s os dois pontos:\n", "\n", " if temp < 0: print 'Congelando...'\n", "\n", "A partir da vers\u00e3o 2.5, o Python suporta a express\u00e3o:\n", "\n", " = if else \n", "\n", "Na qual `` receber\u00e1 `` se `` for verdadeira e `` caso contr\u00e1rio." ] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [ { "html": [ "\n", "" ], "output_type": "pyout", "prompt_number": 1, "text": [ "" ] } ], "prompt_number": 1 } ], "metadata": {} } ] }