guia completo de python

Download Guia completo de python

Post on 18-Dec-2014

579 views

Category:

Documents

3 download

Embed Size (px)

DESCRIPTION

 

TRANSCRIPT

  • 1. Aprenda Computao com Python Documentation Verso 1.1 Allen Downey, Jeff Elkner and Chris Meyers 12/08/2010
  • 2. Contedo 1 Prefcio 1.1 Como e porque eu vim a usar Python . 1.2 Encontrando um livro-texto . . . . . . 1.3 Introduzindo programao com Python 1.4 Construindo uma comunidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 4 4 6 2 Apresentao 3 Captulo 1: O caminho do programa 3.1 1.1 A linguagem de programao Python . . 3.2 1.2 O que um programa? . . . . . . . . . . 3.3 1.3 O que depurao (debugging)? . . . . . 3.4 1.4 Linguagens naturais e linguagens formais 3.5 1.5 O primeiro programa . . . . . . . . . . . 3.6 1.6 Glossrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 9 11 11 13 14 14 Captulo 2: Variveis, expresses e comandos 4.1 2.1 Valores e tipos . . . . . . . . . . . . . . 4.2 2.2 Variveis . . . . . . . . . . . . . . . . . 4.3 2.3 Nomes de variveis e palavras reservadas 4.4 2.4 Comandos . . . . . . . . . . . . . . . . 4.5 2.5 Avaliando expresses . . . . . . . . . . . 4.6 2.6 Operadores e operandos . . . . . . . . . 4.7 2.7 Ordem dos operadores . . . . . . . . . . 4.8 2.8 Operaes com strings . . . . . . . . . . 4.9 2.9 Composio . . . . . . . . . . . . . . . 4.10 2.11 Glossrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 17 18 19 20 20 21 22 22 23 23 Captulo 3: Funes 5.1 3.1 Chamadas de funes 5.2 3.2 Converso entre tipos 5.3 3.3 Coero entre tipos . . 5.4 3.4 Funes matemticas . 5.5 3.5 Composio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 25 26 26 27 28 4 5 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i
  • 3. 5.6 5.7 5.8 5.9 5.10 5.11 5.12 5.13 6 7 8 9 ii 3.6 Adicionando novas funes . . . 3.7 Denies e uso . . . . . . . . . 3.8 Fluxo de execuo . . . . . . . . 3.9 Parmetros e argumentos . . . . . 3.10 Variveis e parmetros so locais 3.11 Diagramas da pilha . . . . . . . 3.12 Funes com resultados . . . . . 3.13 Glossrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 29 30 30 31 32 33 33 Captulo 4: Condicionais e recursividade 6.1 4.1 O operador mdulo . . . . . . . . . . . . . . 6.2 4.2 Expresses booleanas . . . . . . . . . . . . 6.3 4.3 Operadores lgicos . . . . . . . . . . . . . . 6.4 4.4 Execuo condicional . . . . . . . . . . . . 6.5 4.5 Execuo alternativa . . . . . . . . . . . . . 6.6 4.6 Condicionais encadeados . . . . . . . . . . . 6.7 4.7 Condicionais aninhados . . . . . . . . . . . 6.8 4.8 A instruo return . . . . . . . . . . . . . 6.9 4.9 Recursividade . . . . . . . . . . . . . . . . 6.10 4.10 Diagramas de pilha para funes recursivas 6.11 4.11 Recursividade innita . . . . . . . . . . . . 6.12 4.12 Entrada pelo teclado . . . . . . . . . . . . 6.13 4.13 Glossrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 35 36 36 37 37 38 38 39 39 40 41 42 42 Captulo 5: Funes frutferas 7.1 5.1 Valores de retorno . . . . . . . . 7.2 5.2 Desenvolvimento de programas . 7.3 5.3 Composio . . . . . . . . . . . 7.4 5.4 Funes booleanas . . . . . . . . 7.5 5.5 Mais recursividade . . . . . . . . 7.6 5.6 Voto de conana (Leap of faith) 7.7 5.7 Mais um exemplo . . . . . . . . 7.8 5.8 Checagem de tipos . . . . . . . . 7.9 5.9 Glossrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 45 46 48 49 49 51 51 52 53 Captulo 6: Iterao 8.1 6.1 Reatribuies . . . . . . . . . . . . . . . . . . . 8.2 6.2 O comando while . . . . . . . . . . . . . . . . 8.3 6.3 Tabelas . . . . . . . . . . . . . . . . . . . . . . 8.4 6.4 Tabelas de duas dimenses (ou bi-dimensionais) 8.5 6.5 Encapsulamento e generalizao . . . . . . . . . 8.6 6.6 Mais encapsulamento . . . . . . . . . . . . . . 8.7 6.7 Variveis locais . . . . . . . . . . . . . . . . . . 8.8 6.8 Mais generalizao . . . . . . . . . . . . . . . . 8.9 6.9 Funes . . . . . . . . . . . . . . . . . . . . . . 8.10 6.10 Glossrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 55 56 57 59 59 60 61 61 63 63 Captulo 7: Strings 9.1 7.1 Um tipo de dado composto . . . 9.2 7.2 Comprimento . . . . . . . . . . 9.3 7.3 Travessia e o loop for . . . . . 9.4 7.4 Fatias de strings . . . . . . . . 9.5 7.5 Comparao de strings . . . . . 9.6 7.6 Strings so imutveis . . . . . . 9.7 7.7 Uma funo find (encontrar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 65 66 66 67 68 68 69 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
  • 4. 9.8 9.9 9.10 9.11 9.12 7.8 Iterando e contando . . . . 7.9 O mdulo string . . . . . 7.10 Classicao de caracteres 7.11 Glossrio . . . . . . . . . 7.11 Glossrio2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 70 70 71 72 10 Captulo 8: Listas 10.1 8.1 Valores da lista . . . . . . . . . . . 10.2 8.2 Acessado elementos . . . . . . . . 10.3 8.3 Comprimento da lista . . . . . . . 10.4 8.4 M