ebook img

Aprenda Computação com Python 2 Documentation PDF

209 Pages·2017·1.01 MB·Portuguese
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Aprenda Computação com Python 2 Documentation

Aprenda Computação com Python 2 Documentation Versão 1.1 Allen Downey, Jeff Elkner and Chris Meyers set 27, 2017 Conteúdo 1 Prefácio 3 1.1 ComoeporqueeuvimausarPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Encontrandoumlivro-texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 IntroduzindoprogramaçãocomPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Construindoumacomunidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2 Apresentação 7 3 Capítulo1: Ocaminhodoprograma 9 3.1 1.1AlinguagemdeprogramaçãoPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.2 1.2Oqueéumprograma? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.3 1.3Oqueédepuração(debugging)? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.4 1.4Linguagensnaturaiselinguagensformais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.5 1.5Oprimeiroprograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.6 1.6Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 4 Capítulo2: Variáveis,expressõesecomandos 17 4.1 2.1Valoresetipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.2 2.2Variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.3 2.3Nomesdevariáveisepalavrasreservadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.4 2.4Comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.5 2.5Avaliandoexpressões. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.6 2.6Operadoreseoperandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.7 2.7Ordemdosoperadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4.8 2.8Operaçõescomstrings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4.9 2.9Composição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.10 2.11Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5 Capítulo3: Funções 25 5.1 3.1Chamadasdefunções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 5.2 3.2Conversãoentretipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 5.3 3.3Coerçãoentretipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5.4 3.4Funçõesmatemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5.5 3.5Composição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.6 3.6Adicionandonovasfunções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.7 3.7Definiçõeseuso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 5.8 3.8Fluxodeexecução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 i 5.9 3.9Parâmetroseargumentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.10 3.10Variáveiseparâmetrossãolocais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.11 3.11Diagramasdapilha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 5.12 3.12Funçõescomresultados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 5.13 3.13Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 6 Capítulo4: Condicionaiserecursividade 35 6.1 4.1Ooperadormódulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 6.2 4.2Expressõesbooleanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 6.3 4.3Operadoreslógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 6.4 4.4Execuçãocondicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 6.5 4.5Execuçãoalternativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 6.6 4.6Condicionaisencadeados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 6.7 4.7Condicionaisaninhados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 6.8 4.8Ainstruçãoreturn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 6.9 4.9Recursividade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 6.10 4.10Diagramasdepilhaparafunçõesrecursivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 6.11 4.11Recursividadeinfinita . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 6.12 4.12Entradapeloteclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 6.13 4.13Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 7 Capítulo5: Funçõesfrutíferas 45 7.1 5.1Valoresderetorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 7.2 5.2Desenvolvimentodeprogramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 7.3 5.3Composição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 7.4 5.4Funçõesbooleanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 7.5 5.5Maisrecursividade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.6 5.6Votodeconfiança(Leapoffaith) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 7.7 5.7Maisumexemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 7.8 5.8Checagemdetipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 7.9 5.9Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 8 Capítulo6: Iteração 55 8.1 6.1Reatribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 8.2 6.2Ocomandowhile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 8.3 6.3Tabelas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 8.4 6.4Tabelasdeduasdimensões(oubi-dimensionais) . . . . . . . . . . . . . . . . . . . . . . . . . . 59 8.5 6.5Encapsulamentoegeneralização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 8.6 6.6Maisencapsulamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 8.7 6.7Variáveislocais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 8.8 6.8Maisgeneralização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 8.9 6.9Funções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 8.10 6.10Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 9 Capítulo7: Strings 65 9.1 7.1Umtipodedadocomposto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 9.2 7.2Comprimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 9.3 7.3Travessiaeoloopfor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 9.4 7.4Fatiasdestrings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 9.5 7.5Comparaçãodestrings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 9.6 7.6Stringssãoimutáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 9.7 7.7Umafunçãofind(encontrar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 9.8 7.8Iterandoecontando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 9.9 7.9Omódulostring. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 9.10 7.10Classificaçãodecaracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 ii 9.11 7.11Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 9.12 7.11Glossário2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 10 Capítulo8: Listas 73 10.1 8.1Valoresdalista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 10.2 8.2Acessadoelementos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 10.3 8.3Comprimentodalista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 10.4 8.4Membrosdeumalista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 10.5 8.5Listaselaçosfor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 10.6 8.6Operaçõesemlistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 10.7 8.7Fatiamentodelistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 10.8 8.8Listassãomutáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 10.9 8.9Remoçãoemlista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 10.10 8.10Ojetosevalores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 10.11 8.11Apelidos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 10.12 8.12Clonandolistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 10.13 8.13Listacomoparâmetro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 10.14 8.14Listaaninhadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 10.15 8.15Matrizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 10.16 8.16Stringselistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 10.17 8.17Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 10.18 Outrostermosutilizadosnestecapítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 11 Capítulo9: Tuplas 85 11.1 9.1Mutabilidadeetuplas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 11.2 9.2Atribuiçõesdetupla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 11.3 9.3Tuplascomovaloresderetorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 11.4 9.4Númerosaleatórios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 11.5 9.5Listadenúmerosaleatórios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 11.6 9.6Contando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 11.7 9.7Váriosintervalos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 11.8 9.8Umasoluçãoemumsópasso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 11.9 9.9Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 12 Capítulo10: Dicionários 93 12.1 10.1OperaçõesdosDicionários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 12.2 10.2MétodosdosDicionários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 12.3 10.3Aliasing(XXX)eCopiar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 12.4 10.4MatrizesEsparsas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 12.5 10.5HintXXX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 12.6 10.6InteirosLongos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 12.7 10.7ContandoLetras. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 12.8 10.8Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 13 Capítulo11: Arquivoseexceções 101 13.1 Arquivoseexceções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 13.2 11.1Arquivostexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 13.3 11.2Gravandovariáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 13.4 11.3Diretórios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 13.5 11.4Pickling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 13.6 11.5Exceções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 13.7 11.6Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 14 Capítulo12: Classeseobjetos 109 14.1 12.1Tiposcompostosdefinidospelousuário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 iii 14.2 12.2Atributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 14.3 12.3Instânciascomoparâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 14.4 12.4Osignificadode“mesmo” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 14.5 12.5Retângulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 14.6 12.6Instanciascomovaloresretornados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 14.7 12.7Objetossãomutáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 14.8 12.8Copiando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 14.9 12.9Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 15 Capítulo13: Classesefunções 117 15.1 13.1Horario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 15.2 13.2FunçõesPuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 15.3 13.3Modificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 15.4 13.4Oqueémelhor? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 15.5 13.5DesenvolvimentoPrototipadoversusDesenvolvimentoPlanejamento. . . . . . . . . . . . . . . 120 15.6 13.6Generalização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 15.7 13.7Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 15.8 13.8Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 16 Capítulo14: Classesemétodos 123 16.1 14.1Característicasdaorientaçãoaobjetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 16.2 14.2exibeHora(printTime) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 16.3 14.3Umoutroexemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 16.4 14.4Umexemplomaiscomplicado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 16.5 14.10Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 17 Capítulo15: Conjuntosdeobjetos 127 17.1 15.1Composição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 17.2 15.2ObjetosCarta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 17.3 15.3Atributosdeclasseeométodo__str__ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 17.4 15.4Comparandocartas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 17.5 15.5Baralhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 17.6 15.6Imprimindoobaralho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 17.7 15.7Embaralhando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 17.8 15.8Removendoedistribuindocartas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 17.9 15.9Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 18 Capitulo16: Herança 135 18.1 16.1Herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 18.2 16.2Umamãodecartas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 18.3 16.3Dandoascartas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 18.4 16.4Exibindoamao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 18.5 16.5AclasseJogoDeCartas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 18.6 16.6ClasseMaoDeMico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 18.7 16.7ClasseMico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 18.8 16.8Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 19 Capítulo17: Listasencadeadas 145 19.1 17.1ReferênciasEmbutidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 19.2 17.2AclasseNo(Node) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 19.3 17.3ListascomoColeções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 19.4 17.4ListaseRecorrência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 19.5 17.5ListasInfinitas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 19.6 17.6OTeoremadaAmbigüidadeFundamental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 19.7 17.7ModificandoListas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 iv 19.8 17.8EnvoltórioseAjudadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 19.9 17.9AClasseListaLigada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 19.10 17.10Invariantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 19.11 17.11Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 20 Capítulo18: Pilhas 155 20.1 18.1Tiposabstratosdedados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 20.2 18.2OTADPilha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 20.3 18.3ImplementandopilhascomlistasdePython . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 20.4 18.4Empilhandoedesempilhando. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 20.5 18.5Usandoumapilhaparaavaliarexpressõespós-fixas . . . . . . . . . . . . . . . . . . . . . . . . 157 20.6 18.6Análisesintática. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 20.7 18.7Avaliandoempós-fixo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 21 Capítulo19: Filas 161 21.1 19.1UmTDAFila . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 21.2 19.2Filaencadeada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 21.3 19.3Característicasdeperformance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 21.4 19.4Filaencadeadaaprimorada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 21.5 19.5Filaporprioridade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 21.6 19.6AclasseGolfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 21.7 19.7Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 22 Capítulo20: Árvores 167 22.1 20.1Construindoárvores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 22.2 20.2Percorrendoárvores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 22.3 20.3Árvoresdeexpressões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 22.4 20.4Percursodeárvores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 22.5 20.5Construindoumaárvoredeexpressão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 22.6 20.6Manipulandoerros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 22.7 20.7Aárvoredosanimais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 22.8 20.8Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 23 ApêndiceA:Depuração 181 23.1 A.1Errosdesintaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 23.2 A.2Errosdetempodeexecução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 23.3 A.3Errosdesemântica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 24 ApêndiceB:Criandoumnovotipodedado 189 24.1 B.1Multiplicaçãodefrações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 24.2 B.2Somadefrações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 24.3 B.3Simplificandofrações: OalgoritmodeEuclides . . . . . . . . . . . . . . . . . . . . . . . . . . 192 24.4 B.4Comparandofrações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 24.5 B.5Indomaisalém... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 24.6 B.6Glossário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 25 ApêndiceC:Leiturasrecomendadas 195 25.1 C.1Recomendaçõesparaleitura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 25.2 C.2SiteselivrossobrePython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 25.3 C.3Livrosdeciênciadacomputaçãorecomendados . . . . . . . . . . . . . . . . . . . . . . . . . . 197 26 ApêndiceD:GNUFreeDocumentationLicense 199 27 Indicesandtables 201 v vi AprendaComputaçãocomPython2Documentation,Versão1.1 Contents: Conteúdo 1 AprendaComputaçãocomPython2Documentation,Versão1.1 2 Conteúdo

Description:
3 Capítulo 1: O caminho do programa. 9. 3.1 4 Capítulo 2: Variáveis, expressões e comandos. 17 (Python Reference Manual) tem os detalhes. do programa pudesse ser diminuída para a velocidade humana, e com alguns.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.