mostrando a cobra - breve introdução à linguagem python
DESCRIPTION
Aula magna no Colegiado de Informática, IFPR - Assis Chateaubriand, 01/03/2013.TRANSCRIPT
![Page 1: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/1.jpg)
![Page 2: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/2.jpg)
2Prof. Fabio Alexandre Spanhol, M.Sc.
é uma linguagem interpretada, interativa, funcional, orientada a objetos, dinamicamentetipada e com gerenciamentoautomático de memória
Similar, em certos aspectos, a Perl, Ruby, Scheme, Smalltalk e Tcl
![Page 3: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/3.jpg)
Entre todas as linguagens que aprendi, Python é a que menos interfere entre mim e o problema. É a mais efetiva para traduzir pensamentos em ações.
Eric Raymond
Prof. Fabio Alexandre Spanhol, M.Sc. 3
![Page 4: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/4.jpg)
Life is Better Without Braces.
Bruce Eckel
Prof. Fabio Alexandre Spanhol, M.Sc. 4
![Page 5: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/5.jpg)
Python has been an important part of Googlesince the beginning, and remains so as the system grows and evolves. Today dozens of Google engineers use Python, and we're looking for more people with skills in this language.
Peter NorvikProf. Fabio Alexandre Spanhol, M.Sc. 5
![Page 6: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/6.jpg)
6Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 7: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/7.jpg)
7Prof. Fabio Alexandre Spanhol, M.Sc.
Guido van Rossum é referido pela comunidade python, desde 1995, como Benevolent Dictator For Life(BDFL)
De dezembro de 2005 a 2012 Guido trabalhou na Google, dedicando 50% do seu tempo com a linguagem 7/12/2012 passou a trabalhar na
Dropbox www.python.org/~guido neopythonic.blogspot.com/
![Page 8: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/8.jpg)
8Prof. Fabio Alexandre Spanhol, M.Sc.
Não veio da cobra!"Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office ... would be closed, but I had a home computer, and not much else on my hands. I decided to write an interpreter for the new scripting language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python´s Flying Circus)”.
![Page 9: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/9.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 9
![Page 10: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/10.jpg)
NADA!
Python foi desenvolvido como um projeto open source, sem fins lucrativos e gerenciado pela PSF(Python Software Foundation)
10Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 11: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/11.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 11
Para obter o interpretador Python acessar http://www.python.org/download/ VersõesPython 2.7.3 foi liberada em 9 de abril de 2012Python 3.3.0* foi liberada em 29 de setembro de 2012
![Page 12: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/12.jpg)
12Prof. Fabio Alexandre Spanhol, M.Sc.
http://www.python.org/about/success/GoogleNASAYahooInfoSeekMCI WorldcomIBM HigwayIndustrial Light and MagicAstraZenecaHoneywell...
![Page 13: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/13.jpg)
Governo FederalPetrobrasSerproEmbratelGlobo.comStarOneConectivaCPqDAsyncHaxentUTFPR...
13Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 14: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/14.jpg)
14Prof. Fabio Alexandre Spanhol, M.Sc.
Vários projetos da comunidade Software Livre
BlenderOpenOfficeZope/PloneMoinMoinMailmanBitTorrentChandlerGimpPloneDjangoOpenERPinVesalius
![Page 15: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/15.jpg)
Canivete suíçoWeb e Internet DatabaseGUIsCientífico e processamento numéricoEducaçãoProgramação de rede Construção e teste de softwareDesenvolvimento de jogos e renderização3DOnde mais sua imaginação mandar!
15Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 16: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/16.jpg)
16Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 17: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/17.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 17
![Page 18: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/18.jpg)
18Prof. Fabio Alexandre Spanhol, M.Sc.
Unix: HP-UX, Solaris ...Linux (frequentemente pré-instalada)Mac OSX (sempre pré-instalada)Windows: 9x, ME, 2K, XP, Vista, Seven
(ctypes, win32all)Apple iPhoneGoogle Android
![Page 19: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/19.jpg)
SIM: Compilação Híbrida!
como Java, programas Python são compilados,porém para uma linguagem intermediária,destinada a um interpretador Isola Python de muitas das excentricidades das
máquinas reais na qual ele roda
provê um nível de portabilidade
19Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 20: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/20.jpg)
20Prof. Fabio Alexandre Spanhol, M.Sc.
De altíssimo nível e poderosaElegante, com sintaxe
simples e concisaFácil de aprender,
“cabe” no seu cérebro !MultiparadigmaFuncional, Procedural e Orientado a ObjetosPossui suporte nativo a
estruturas de dados complexas
![Page 21: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/21.jpg)
21Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 22: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/22.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 22
![Page 23: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/23.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 23
![Page 24: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/24.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 24
![Page 25: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/25.jpg)
Código é muito mais lido que escrito!
Readability importa! (muito)
Python te ajuda a escrever código mais legível
Prof. Fabio Alexandre Spanhol, M.Sc. 25
![Page 26: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/26.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 26
Extensa biblioteca padrão
Um módulo para o que você precisar
sys, random, re, datetime, calendar, csv, os, webbrowser, string, urlib, tkinter, codecs, pickle, types, array, mutex, queue, zlib, gzip, md5, thread, socket, email, xml.dom, locale, etc.
![Page 27: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/27.jpg)
27Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 28: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/28.jpg)
33 palavras reservadas Java tem 53 e C# 77 and except nonlocal False as finally not None assert for or True break from pass class global raise continue if return def import try del in while elif is with else lambda yeld
28Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 29: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/29.jpg)
Prazer em lhe conhecer!Cython onde existir um compilador C ISO/IEC 9899:1990Jython máquina virtual JavaPyPy Python implementado em PythonPython for .NET [Brian Lloyd], IronPython (da M$)Python for DelphiLunaticPython interoperando com LuaRuby/Python em Ruby importar módulos Python)
29Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 30: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/30.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 30
![Page 31: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/31.jpg)
Programas maiores codificados em arquivos (scripts)
normalmente usando um IDEextensão py
O script pode ser executado diretamente da linha de comando do SOpython oi.py
Ou carregado para o interpretador interativo>>> import oi
Prof. Fabio Alexandre Spanhol, M.Sc. 31
![Page 32: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/32.jpg)
InúmerosGeanyVimAptanaKomodoNetBeansPyCharmPyDev (Eclipse)Wing IDEPyshieldSpyderMS-Visual StudioEtc.
Prof. Fabio Alexandre Spanhol, M.Sc. 32
![Page 33: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/33.jpg)
Ninja IDE (Ninja Is Not Just Another IDE)
MultiplataformaEditor de código poderosoGerenciamento de ProjetosPlugins http://ninja-ide.org/
Prof. Fabio Alexandre Spanhol, M.Sc. 33
![Page 34: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/34.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 34
![Page 35: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/35.jpg)
35Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 36: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/36.jpg)
Python Enhancement Proposal
São documentos padronizados da comunidade Python Uma PEP propõe um padrão, melhoria,
funcionalidade, estrutura, explicações sobre funcionalidades, etc.
Veja a PEP #0http://www.python.org/dev/peps/pep-0000/
Prof. Fabio Alexandre Spanhol, M.Sc. 36
![Page 37: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/37.jpg)
Python é case-sensitive
Cada linha é delimitada por enter
Tipagem forte e dinâmicaNão há declaração de variáveis
Alguns operadoresAtribuição: =Aritméticos: +, -, *, /, **,//, %Relacionais: <, >, >=,<=, ==, !=, <>, is, inLógicos: and, or, notBitwise: |, ^, &, >>, <<, ~
37Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 38: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/38.jpg)
Em Python, variáveis são referências a objetos
não guardam os objetos em sinão têm tipo, mas os objetos aos quais elas se referem têm tipoSão criadas dinamicamente
Uma variável não pode ser utilizada em uma expressão sem ter sido inicializada
não existe “criação automática” de variáveis
Prof. Fabio Alexandre Spanhol, M.Sc. 38
![Page 39: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/39.jpg)
Variáveis não são “caixas” com valoresVariáveis são “rótulos” colados em objetosSão criadas pela atribuiçãoOperador =
Prof. Fabio Alexandre Spanhol, M.Sc. 39
![Page 40: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/40.jpg)
Atribuição não gera uma cópia do objetoUma referência (variável) pode ser liberadaUsando del Não existindo mais referências a um objeto, ele é
removido da memória (garbage collector)
Prof. Fabio Alexandre Spanhol, M.Sc. 40
![Page 41: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/41.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc.
Um bloco inicia com :
A estrutura dos blocos é definida pelaindentação
A PEP #8 - Style Guide for Python Code - sugere 4espaços Seja consistente Não misturar tabulações com espaços!!!
41
![Page 42: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/42.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 42
![Page 43: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/43.jpg)
A partir do caractere #, o interpretador ignora o restante do código até o final da linha
Isso não vale dentro de strings
Para várias linhas use asplas triplas (docstring)
Documentar funções, classes, módulos, etc.
Prof. Fabio Alexandre Spanhol, M.Sc. 43
![Page 44: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/44.jpg)
Inteirosx = 10y = 56859898958711346465165798798715654000000000000**2z = y + x 3233048109594863662031421586618163610229539807267781773950479944647716000000000000000000000010L
Ponto flutuantef = 85.99984
BooleanosTrue e False
StringsDelimitadas por aspas ou apóstrofos = “python”s2 = ‘language’s3 = “%s %s” % (s,s2)
44Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 45: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/45.jpg)
Usando type
45Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 46: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/46.jpg)
Usando type
46Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 47: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/47.jpg)
TuplasImutáveis(‘Fabio’,36, False, 89.2,186)
Listasmutáveis[‘Fabio’,36, False, 89.2,186]
DicionáriosChaves com valores associados refeicoes = {"café" : “cereal com leite e mel", "almoço" : "macarrão carbonara“,"jantar" : "sopa de champignon"} refeicoes["almoço"]
ConjuntosNão permite elementos duplicadosset([1,2,3,4,5,6,8,9,8,1,2,7,1,2,5])Retorna set([1, 2, 3, 4, 5, 6, 7, 8, 9])
47Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 48: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/48.jpg)
Entrada com input
Saída com print
48Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 49: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/49.jpg)
ifif (expressao):
bloco[elif (expressao):
bloco][else:
bloco]
49Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 50: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/50.jpg)
exemplo
50Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 51: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/51.jpg)
Forfor variavel in sequencia:
bloco[else:
bloco]
While
while (expressao):bloco
[else:bloco]
51Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 52: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/52.jpg)
Exemplo1
Exemplo2
52Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 53: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/53.jpg)
Modularizam o códigoComando def inicia a definição de uma funçãoComando return marca o fim da execução da função e define o resultado a ser devolvido Pode ser None
Prof. Fabio Alexandre Spanhol, M.Sc. 53
![Page 54: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/54.jpg)
54Prof. Fabio Alexandre Spanhol, M.Sc.
Exemplo
![Page 55: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/55.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 55
![Page 56: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/56.jpg)
Ei, não vamos complicar!
56Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 57: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/57.jpg)
Estourar a pilha de execução é “fácil”
E aí, tentou fat(1000)?
Prof. Fabio Alexandre Spanhol, M.Sc. 57
![Page 58: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/58.jpg)
Mudando o tamanho da pilha de ativação
Prof. Fabio Alexandre Spanhol, M.Sc. 58
![Page 59: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/59.jpg)
59Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 60: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/60.jpg)
60Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 61: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/61.jpg)
Inverter a ordem das cartasbaralho.reverse()
Tirar a carta do topobaralho.pop()
Adicionar 4 coringasbaralho.extend([‘Coringa’]*4)
Colocar em ordembaralho.sort() Pelo número de letras: baralho.sort(key=len)
61Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 62: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/62.jpg)
TCL-TK é parte integrante, via tkinterDiversos outros bindings de frameworkswxWidgetsQTGTKetc.
Prof. Fabio Alexandre Spanhol, M.Sc. 62
![Page 63: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/63.jpg)
63Prof. Fabio Alexandre Spanhol, M.Sc.
![Page 64: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/64.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 64
Também tem!Você pode fazer programação funcional sem Lost in Stupid Parenthesis (LISP)
![Page 65: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/65.jpg)
Prof. Fabio Alexandre Spanhol, M.Sc. 65
![Page 66: Mostrando a Cobra - Breve Introdução à Linguagem Python](https://reader030.vdocuments.site/reader030/viewer/2022020718/54b54d4d4a7959ac7c8b4609/html5/thumbnails/66.jpg)
66Prof. Fabio Alexandre Spanhol, M.Sc.