Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Por que Python? - PythonBrasil[5] - 2009

1,735 views

Published on

Palestra apresentada na PythonBrasil[5] em Caxias do Sul em 10/09/2009.

Apresenta dez razões para conhecer Python.

Published in: Technology
  • Be the first to comment

Por que Python? - PythonBrasil[5] - 2009

  1. 1. Por que Python? 10 raz˜es para aprender Python o Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e 31 de agosto de 2009 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  2. 2. Uma breve introdu¸˜o ca desse que vos fala 1 Mestre em Ciˆncia da Computa¸˜o pela UFSC e ca 2 Professor desde 1995 1 Usu´rio Unix desde 1992 e Linux desde 1999 a 2 Entusiasta de software de c´digo aberto o 1 Membro da comunidade Python desde 2004 2 Membro fundador da Associa¸˜o Python Brasil (APyB) ca 3 Atual diretor de marketing da APyB Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  3. 3. Uma breve introdu¸˜o ca Sobre a linguagem 1 Criada por Guido van Rossum em 1991 2 Origem do nome: grupo de humoristas Monty Python 3 Linguagem de alt´ ıssimo n´ (VHLL) ıvel 4 Sintaxe simples e f´cil de ser assimilada a 5 Linguagem orientada ` objetos com suporte aos paradigmas a estrutural e funcional 6 Tipagem forte e dinˆmica a 7 Multiplataforma 8 Interpretada: compila para bytecode e interpreta 9 Ambiente interativo 10 Licen¸a de c´digo aberto, compat´ com a GPL c o ıvel Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  4. 4. Raz˜o 1: a Python ´ legal e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  5. 5. 1 - Python ´ legal e Simples e leg´ ıvel Exemplos de programas (completos): # Fibonacci # Fatorial a =1 n = int ( raw_input ( " Fatorial de : " )) b =1 fatorial = 1 while a < 800: print " % d ! = " %n , print a , i = n a,b = b,a+b while i > 0: fatorial = fatorial * i print " % d " %i , if i != 1: print " . " , i -= 1 # Primos ehprimo = True numero = input ( " Informe o numero : " ) i = 2 while i < numero : if numero % i == 0: ehprimo = False break i += 1 if ehprimo : print " Primo : " , numero else : print numero , ’ possui fator ’ , i Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  6. 6. 1 - Python ´ legal e Clara e elegante from math import sqrt print " Primos : 2 " , c , p , primos , limite = 1 , 1 , [2 ,] , 1000 for numero in xrange (3 , limite +1 ,2): ehprimo = 1 for i in primos : c += 1 if numero % i == 0: ehprimo = 0 break if i > sqrt ( numero ): break if ehprimo : primos . append ( numero ) print numero , p += 1 print " n nForam encontrados % d numeros primos . " % p print " Foram necessarias % d comparacoes . " % c Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  7. 7. 1 - Python ´ legal e Poderosa e sofisticada arquivo = open ( " emails . txt " ) dominios = {} for contato in arquivo : resto , dominio = contato . split ( " @ " ) dominio = dominio . replace ( " r n " , " " ) if dominio in dominios : dominios [ dominio ] += 1 else : dominios [ dominio ] = 1 arquivo . close () arquivo = open ( " dominios . txt " , " w " ) print " % -30 s - % -5 s " %( " Dominios " , " Ocorrencias " ) for dominio in dominios . keys (): print " % -30 s - % -5 d " %( dominio , dominios [ dominio ]) registro = " % s ;% s n " %( dominio , dominios [ dominio ]) arquivo . write ( registro ) arquivo . close () Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  8. 8. Raz˜o 2: a Python j´ vem com os acess´rios a o Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  9. 9. 2 - Python j´ vem com os acess´rios a o e eles fazem a diferen¸a c import urllib pagina = urllib . urlopen ( " http :// br - linux . org " ) for linha in pagina : if " node - title " not in linha : tmp = linha . split ( ’& gt ; ’ ,2)[2] nome = tmp . split ( ’& lt ; ’ ,1)[0] print nome pagina . close () a = set ( open ( " pacotesInstalados -20080827. txt " , " r " ). readlines ()) b = set ( open ( " pacotesInstalados -20080917. txt " , " r " ). readlines ()) diferenca = b - a open ( " diferenca . txt " , " w " ). writelines ( diferenca ) Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  10. 10. 2 - Python j´ vem com os acess´rios a o e eles fazem a diferen¸a c arquivo = open ( " squid . log " ," r " ) lista = arquivo . readlines () arquivo . close () sites =[] for linha in lista : try : if " DENIED " in linha : inicio = linha . index ( " // " ) fim = linha . index ( " / " , inicio +2) site = linha [ inicio +2: fim ] sites . append ( site ) except : pass dicSites = {} for site in sites : dicSites [ site ] = dicSites . get ( site ,0) + 1 l i s t a S i t e sO rd e na da = sorted ( dicSites . items () , key = itemgetter (1)) Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  11. 11. 2 - Python j´ vem com os acess´rios a o e eles fazem a diferen¸a c Bibliotecas: 1 persistˆncia de objetos e 2 banco de dados 3 gera¸˜o de pdfs ca 4 gera¸˜o de gr´ficos ca a 5 protocolos de redes 6 web 7 criptografia 8 muito mais... http://www.pythonbrasil.com.br/moin.cgi/CookBook Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  12. 12. Raz˜o 3: a Python ´ utilizado l´ fora e a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  13. 13. 3 - Python ´ utilizado l´ fora e a por grandes organiza¸oes c˜ Google http://web.archive.org/web/19990204033714/google.stanford.edu/about.html Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  14. 14. 3 - Python ´ utilizado l´ fora e a por grandes organiza¸oes c˜ Google ”Python tem sido uma parte importante do Google desde o in´ ıcio, e permanece assim conforme o sistema cresce e evolui. Hoje, dezenas de engenheiros do Google usam Python, e estamos procurando por mais pessoas com conhecimento nessa linguagem.”Peter Norvig, diretor de qualidade de busca do Google Inc. http://www.pythonbrasil.com.br/moin.cgi/PythonNoGoogle ”[...] nossa filosofia geral ´ ’Python onde podemos, C++ onde e somos obrigados.’ Python n˜o ´ definitivamente apenas um a e pequeno peda¸o, nem ´ usado apenas para tarefas ’de scripting’; se c e fic´ssemos sem todo nosso c´digo Python de uma hora para outra, a o nossa poderosa infra-estrutura que tem sido descrita como ’a arma secreta do Google’ ficaria abalada.”Alex Martelli, L´ T´cnico, ıder e Sistemas de Produ¸˜o, Google Inc. ca http://groups.google.com/group/comp.lang.python/browse_thread/thread/af75a3e91a03ec18/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  15. 15. 3 - Python ´ utilizado l´ fora e a por grandes organiza¸oes c˜ Youtube ”Python ´ r´pido o suficiente para o nosso site e permite que n´s e a o produzamos caracter´ısticas que pode ser mantidas em tempo recorde, com um m´ınimo de desenvolvedores.”Cuong Do, Arquiteto de Software, YouTube.com http://www.python.org/about/quotes/ ”O YouTube (uma das propriedades mais valiosas do Google) ´ e essencialmente todo Python [...].”Alex Martelli, L´ T´cnico, Sistemas ıder e de Produ¸˜o, Google Inc. ca http://groups.google.com/group/comp.lang.python/browse_thread/thread/af75a3e91a03ec18/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  16. 16. 3 - Python ´ utilizado l´ fora e a por grandes organiza¸oes c˜ Industrial Light and Magic ”Python desempenha um papel-chave no nosso esquema de produ¸˜o. Sem ela um projeto do tamanho de ’Guerras nas ca Estrelas: Epis´dio II’ teria sido muito dif´ de sair. Da o ıcil renderiza¸˜o da multid˜o ao processamento em lote e a ca a composi¸˜o, Python mant´m todas as partes unidas.”Tommy ca e Burnette, Diretor T´cnico Sˆnior, ILM e e ”Quando me transferi [...], todos os membros da equipe [...] me acompanharam — menos Tommy. Ele [...] fora contratado pela Industrial Light & Magic[...]. Tommy se tornou um destacado programador de linguagem Python, por sorte dele a linguagem escolhida pela empresa de Lucas. E sorte mesmo ´ quando o e preparo se une ` oportunidade. ”Randy Pausch, A Li¸˜o Final a ca http://www.python.org/about/quotes/ http://pythonologia.org/2008/09/24/a-licao-final/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  17. 17. 3 - Python ´ utilizado l´ fora e a por grandes organiza¸oes c˜ DreamWorks ”Gostar´ıamos de ser tudo Python, mas hoje ainda temos muito de Perl.”Ed Leonard, Diretor de Tecnologia de Anima¸˜o, DreamWorks ca ”A nossa equipe tem baseado a transi¸˜o de Perl para Python na ca facilidade. H´ trˆs raz˜es prim´rias para isso. A cria¸˜o de a e o a ca bindings em Python para uma biblioteca C++ ´ muito f´cil [...]. A e a natureza orientada a objeto de Python ´ muito atraente [...]. E e Python ´ uma cidad˜ de primeira classe [...] na nossa ind´stria. ” e a u Darin Grant, Chefe de Produ¸˜o de Tecnologia, DreamWorks ca http://marrcandre.blogspot.com/2007/06/linux-alimentando-o-ogro.html Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  18. 18. 3 - Python ´ utilizado l´ fora e a por grandes organiza¸oes c˜ Diversos outros exemplos: 1 Nokia 2 RedHat 3 Canonical 4 OpenOffice 5 Blender 6 Gimp http://www.python.org/about/success/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  19. 19. 3 - Python ´ utilizado l´ fora e a em muitas aplica¸oes c˜ http://pt.wikipedia.org/wiki/Python Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  20. 20. Raz˜o 4: a Python ´ utilizado aqui dentro e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  21. 21. 4 - Python ´ utilizado aqui dentro e com sucesso Async - Stoq: aplicativos livres para gest˜o comercial a http://www.async.com.br Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  22. 22. 4 - Python ´ utilizado aqui dentro e com sucesso LZT - AutoSystem: automa¸˜o de postos de combust´ ca ıvel http://www.lzt.com.br/autosystem.php Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  23. 23. 4 - Python ´ utilizado aqui dentro e com sucesso INdT - Instituto Nokia de Tecnologia http://www.indt.org.br Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  24. 24. 4 - Python ´ utilizado aqui dentro e com sucesso InVesalius - Reconstru¸˜o 3D de imagens m´dicas ca e http://www.cenpra.gov.br/promed/software.htm Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  25. 25. Raz˜o 5: a Python ´ utilizado na web ao redor do mundo e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  26. 26. 5 - Python ´ utilizado na web e ao redor do mundo Novell http://www.novell.com/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  27. 27. 5 - Python ´ utilizado na web e ao redor do mundo CIA https://www.cia.gov/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  28. 28. 5 - Python ´ utilizado na web e ao redor do mundo Outros sites: 1 Free Software Foundation 2 Bah´’´ International Community aı 3 Nokia 4 CBS 5 OTAN 6 Oxfam America 7 Trolltech 8 AOL Music Canada http://plone.net/sites/ http://code.djangoproject.com/wiki/DjangoPoweredSites Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  29. 29. 5 - Python ´ utilizado na web e Django e o Google App Engine ”Django foi a melhor coisa que aconteceu para o Python nos ultimos anos.”Luciano Ramalho, Presidente, Associa¸˜o Python Brasil ´ ca http://code.google.com/intl/pt-BR/appengine/ http://www.djangoproject.com/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  30. 30. Raz˜o 6: a Python ´ utilizado na web aqui no Brasil e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  31. 31. 6 - Python ´ utilizado na web e aqui no Brasil IDG Brasil http://www.idg.com.br/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  32. 32. 6 - Python ´ utilizado na web e aqui no Brasil Vericia - Busca de Im´veis o http://www.vericia.com Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  33. 33. 6 - Python ´ utilizado na web e aqui no Brasil Rep´blica Federativa do Brasil u http://www.brasil.gov.br Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  34. 34. 6 - Python ´ utilizado na web e aqui no Brasil Muitos outros exemplos: Cˆmara dos deputados a Presidˆncia da Rep´blica e u Carta na Escola SEBRAE CertiSign SERPRO Universidade Metodista UNESCO Brasil OAB/SP Varig Politec http://webinsider.uol.com.br/index.php/2006/08/28/python-e-opcao-para-desenvolvimento-web/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  35. 35. Raz˜o 7: a Tem emprego para programadores Python Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  36. 36. 7 - Tem emprego para programadores Python sem sair daqui Google Brasil - Belo Horizonte http://www.google.com.br/support/jobs/bin/answer.py?answer=40943 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  37. 37. 7 - Tem emprego para programadores Python sem sair daqui Globo.com http://www.nabble.com/-Oportunidade-Estagio--globo.com---RJ---Barra-td22506890.html Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  38. 38. 7 - Tem emprego para programadores Python sem sair daqui INdT - Recife http://www.nabble.com/Oportunidade-Imperd%C3%ADvel-de-Emprego-no-Recife-p10955269.html Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  39. 39. 7 - Tem emprego para programadores Python sem sair daqui Ao redor do Brasil - talvez da sua casa! 1 Async Open Source 2 LZT Inform´tica a 3 IBM 4 Governo Brasileiro 5 Sebrae 6 SERPRO 7 Simples Consultoria 8 Weimar Consultoria Bons programadores Python n˜o ficam sem emprego no Brasil a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  40. 40. Raz˜o 8: a Python conversa com outras linguagens Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  41. 41. 8 - Python conversa com as outras linguagens e convive bem com elas C e C++ void initspam ( void ); static PyObject * spam_system ( PyObject * self , PyObject * args ); static PyObject * spam_system ( self , args ) PyObject * self ; PyObject * args ; { char * orden ; int sts ; if (! PyArg_ParseTuple ( args , " s " , & orden )) return NULL ; sts = system ( orden ); return Py_BuildValue ( " i " , sts ); } static PyMethodDef SpamMethods [] = { { " system " , spam_system , METH_VARARGS } , { NULL , NULL } }; void initspam (){( void ) Py_InitModule ( " spam " , SpamMethods );} int main ( int argc , char ** argv ){ P y _ S e tPr ogra mNa me ( argv [0]); Py_Initialize (); initspam (); return 1; } Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  42. 42. 8 - Python conversa com as outras linguagens e convive bem com elas Java: Jython import javax . swing as libswing pnumero = libswing . JOptionPane . showInputDialog ( " Digite um Numero Inteiro : " ) snumero = libswing . JOptionPane . showInputDialog ( " Digite um Numero Inteiro : " ) soma = int ( pnumero ) + int ( snumero ) libswing . JOptionPane . s how Mes sage Dia log ( None , " Soma : % d " % soma ) http://www.linhadecodigo.com.br/Artigo.aspx?id=496 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  43. 43. 8 - Python conversa com as outras linguagens e convive bem com elas .Net: IronPython import clr clr . AddReference ( " System . Windows . Forms " ) from System . Windows . Forms import * class FormV3 ( Form ): def __init__ ( self ): self . Text = ’ Hello World ’ self . Controls . Add ( Label ( Text = ’ Enter Message : ’ )) self . txtMessage = TextBox ( Left =100) self . Controls . Add ( self . txtMessage ) msgButton = Button ( Text = ’ Message ’ , Left =20 , Top =25) msgButton . Click += self . OnMsgButtonClick self . Controls . Add ( msgButton ) def O n M s g B uttonClick ( self , * args ): MessageBox . Show ( self . txtMessage . Text , " Message " ) Application . Run ( FormV3 ()) http://www.codeplex.com/IronPython/Wiki/View.aspx?title=Samples Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  44. 44. Raz˜o 9: a Python ´ multiplataforma e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  45. 45. 9 - Python ´ multiplataforma e 1 Linux 2 Unix 3 Windows 4 MacOS At´ aqui, nada de surpreendente, certo? e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  46. 46. 9 - Python ´ multiplataforma e Maemo http://www.maemo.org Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  47. 47. 9 - Python ´ multiplataforma e XO/OLPC Grande parte do projeto ´ desenvolvida em Python, incluindo: e 1 A interface gr´fica Sugar a 2 V´rias aplica¸˜es e jogos a co 3 O sistema de arquivos http://wiki.laptop.org/go/Python http://www.freesoftwaremagazine.com/blogs/olpc_kicks_off_pycon_2007 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  48. 48. 9 - Python ´ multiplataforma e PyS60 - Celulares Nokia S´rie 60 e http://wiki.opensource.nokia.com/projects/PyS60 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  49. 49. 9 - Python ´ multiplataforma e iPhone O Django foi uma das primeiras aplica¸˜es complexas portadas co http://devlog.waltercruz.com/django_rodando_no_iphone Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  50. 50. 9 - Python ´ multiplataforma e Android O Android permite o uso de Python como linguagem de script http://www.mobiledev.com.br/2009/01/03/rodando-python-no-android/ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  51. 51. Raz˜o 10: a Python ´ multiparadigma e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  52. 52. 10 - Python ´ multiparadigma e Programa¸˜o Estruturada ca import random def jogaDados (): dado1 = random . randrange (1 ,7) dado2 = random . randrange (1 ,7) somaTemp = dado1 + dado2 print " Jogador tirou % d + % d = % d " %( dado1 , dado2 , somaTemp ) return somaTemp soma = jogaDados () if soma == 7 or soma == 11: situacaoJogo = " GANHOU " elif soma == 2 or soma == 3 or soma == 12: situacaoJogo = " PERDEU " else : situacaoJogo = " CONTINUA " meuPonto = soma print " Ponto : " , meuPonto while situacaoJogo == " CONTINUA " : soma = jogaDados () if soma == meuPonto : situacaoJogo = " GANHOU " elif soma == 7: situacaoJogo = " PERDEU " if situacaoJogo == " GANHOU " : print " Jogador ganha " else : print " Jogador perde " Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  53. 53. 10 - Python ´ multiparadigma e Programa¸˜o Orientada a Objetos ca class Fracao ( object ): python -i poo - fracoes . py def __mdc ( self , m , n ): >>> a = Fracao (5 ,7) if m % n == 0: >>> b = Fracao (3 ,4) return n >> r1 = a * b else : >>> print r1 return self . __mdc (n , m % n ) 15/28 >>> c = Fracao (3 ,5) def __init__ ( self , numerador , denominador =1): >> r2 = a * c g = self . __mdc ( numerador , denominador ) >>> print r2 self . numerador = numerador / g 3/7 self . denominador = denominador / g def __repr__ ( self ): return " % d /% d " %( self . numerador , self . denominador ) def __mul__ ( self , outro ): if isinstance ( outro , int ): outro = Fracao ( outro ) return Fracao ( self . numerador * outro . numerador , self . denominador * outro . denominador ) __rmul__ = __mul__ Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  54. 54. 10 - Python ´ multiparadigma e Programa¸˜o Funcional ca # Primos menores que 1000 print filter ( None , map ( lambda y : y * reduce ( lambda x , y : x * y !=0 , map ( lambda x , y = y : y %x , range (2 , int ( pow (y ,0.5)+1))) ,1) , range (2 ,1000))) # F i b o n a c c i : 10 p r i m e i r o s numeros print map ( lambda x , f = lambda x , f :( x <=1) or ( f (x -1 , f )+ f (x -2 , f )): f (x , f ) , range (10)) # C o n j u n t o de M a n d e l b r o t print ( lambda Ru , Ro , Iu , Io , IM , Sx , Sy : reduce ( lambda x , y : x +y , map ( lambda y , Iu = Iu , Io = Io , Ru = Ru , Ro = Ro , Sy = Sy , L = lambda yc , Iu = Iu , Io = Io , Ru = Ru , Ro = Ro , i = IM , Sx = Sx , Sy = Sy : reduce ( lambda x , y : x +y , map ( lambda x , xc = Ru , yc = yc , Ru = Ru , Ro = Ro , i =i , Sx = Sx , F = lambda xc , yc ,x ,y ,k , f = lambda xc , yc ,x ,y ,k , f :( k <=0) or ( x * x + y * y >=4.0) or 1+ f ( xc , yc , x *x - y * y + xc ,2.0* x * y + yc ,k -1 , f ): f ( xc , yc ,x ,y ,k , f ): chr ( 64+ F ( Ru + x *( Ro - Ru )/ Sx , yc ,0 ,0 , i )) , range ( Sx ))): L ( Iu + y *( Io - Iu )/ Sy ) , range ( Sy ))))( -2.1 , 0.7 , -1.2 , 1.2 , 30 , 80 , 24) http://www.pythonbrasil.com.br/moin.cgi/PythonFuncional Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  55. 55. Bˆnus o Duas raz˜es adicionais o Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  56. 56. Bˆnus 1: 11 - Python ´ boa como primeira linguagem o e aprenda a programar com Python 1 Experiˆncia de ensino desde 2004 e 2 V´rios iniciativas no Brasil e no mundo a 3 MIT copiou nossa id´ia :) e 4 Faz bem ` auto-estima do iniciante a 5 Uso pode ser extrapolado para outras mat´rias e http://www.amk.ca/diary/2006/11/mit_to_try_python_for_introduc.html Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  57. 57. Bˆnus 2: 12 - Existe uma comunidade forte o vocˆ tem com quem contar e 1 Lista python-brasil: cerca de 500 mensagens por mˆs. e 2 Associa¸˜o Python Brasil: amadurecimento da comunidade ca 3 Conferˆncia Python Brasil: evento de alto n´ t´cnico e ıvel e 4 FISL: nosso ”segundo”encontro anual 5 Diversos grupos de usu´rios ao redor do Brasil a http://pythonbrasil.com.br Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  58. 58. Agradecimentos 1 Eduardo Dutka 2 Eduardo da Silva 3 Elvis Pf¨tzenreuter u 4 ´ Erico Andrei 5 Humberto Di´genes o 6 Mehran Misaghi 7 Osvaldo Santana Neto 8 Rodrigo Curvˆllo e 9 Rodrigo Senra 10 Ramiro Luz E muito obrigado a todos vocˆs pela presen¸a! e c Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  59. 59. Discuss˜o a Um de cada vez, por favor ;-) Contato: 1 google*: marcoandre@gmail.com 2 blog: http://marrcandre.blogspot.com 3 slideshare: http://slideshare.com/marrcandre 4 twitter: @marrcandre Muito obrigado! Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?

×