SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
Por que Python?
                          10 raz˜es para aprender Python
                                o


         Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
                   e



                                 20 de outubro de 2011




Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
          e                                       Por que Python?
Uma breve introdu¸˜o
                 ca
desse que vos fala




      1   Mestre em Ciˆncia da Computa¸˜o pela UFSC
                      e               ca
      2   Professor do Instituto Federal Catarinense

      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




  Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
            e                                       Por que Python?
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    Orientada ` objetos, estruturada e funcional
                a
 6    Tipagem forte e dinˆmica
                         a
 7    Multiplataforma
 8    Interpretada
 9    Ambiente interativo
10    Licen¸a compat´ com a GPL
           c        ıvel


     Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
               e                                       Por que Python?
1 - Python ´ legal
            e


                                                                            1   Simples
arquivo = open ( " emails . txt " )
dominios = {}                                                               2   Leg´
                                                                                   ıvel
for contato in arquivo :
    resto , dominio = contato . split ( " @ " )
                                                                            3   Clara
    dominio = dominio . replace ( "  r  n " , " " )
                                                                            4   Simplificada
     if dominio in dominios :
          dominios [ dominio ] += 1                                         5   Sofisticada
     else :
          dominios [ dominio ] = 1                                          6   Poderosa
arquivo . close ()

arquivo = open ( " dominios . txt " , " w " )

for dominio in dominios . keys ():
    registro = " % s ;% s  n " %( dominio , dominios [ dominio ])
    arquivo . write ( registro )

arquivo . close ()




     Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
               e                                          Por que Python?
2 - Python j´ vem com os acess´rios
            a                 o




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
3 - Python ´ utilizado l´ fora
           e            a




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
3 - Python ´ utilizado l´ fora
           e            a




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
3 - Python ´ utilizado l´ fora
           e            a




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
4 - Python ´ utilizado aqui dentro
           e
          LZT: AutoSystem
                                                       Instituto Nokia de Tecnologia




                                                                     InVesalius
             Async: Stoq




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
5 - Python ´ utilizado na web ao redor do mundo
           e




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
5 - Python ´ utilizado na web ao redor do mundo
           e

  Diversos frameworks




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
6 - Python ´ utilizado na web aqui no Brasil
           e
                brasil.gov.br                                         globo.com




                  uiner.com
                                                                     vericia.com




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
6 - Python ´ utilizado na web aqui no Brasil
           e
                                                                      certsign.com.br
                    ucs.br




                serpro.gov.br

                                                                     atepassar.com.br




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
7 - Tem emprego para programadores Python
          python.org/community/jobs
                                                               google.com.br/intl/en/jobs/




     empregos.trovitbrasil.com.br/python
                                                                 twitter.com/python_jobs




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
8 - Python conversa com as outras linguagens
  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?
8 - Python conversa com as outras linguagens



  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 )




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                           Por que Python?
8 - Python conversa com as outras linguagens



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 ())




     Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
               e                                             Por que Python?
8 - Python conversa com as outras linguagens




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
9 - Python ´ multiplataforma
           e




  At´ aqui, nada de surpreendente, certo?
    e




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
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




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
9 - Python ´ multiplataforma
           e
  Dispositivos m´veis
                 o
            Android                                                  Iphone




                Symbian                                          Meego/Maemo




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                       Por que Python?
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?
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?
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)




 Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
           e                                                          Por que Python?
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




  Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
            e                                       Por que Python?
Bˆnus 2: 12 - Existe uma comunidade forte
 o
vocˆ tem com quem contar
   e




      1   Lista python-brasil: +3650 membros, 500 mensagens/mˆs.
                                                             e
      2   Associa¸˜o Python Brasil: amadurecimento da comunidade
                 ca
      3   PythonBrasil[7]: S˜o Paulo, 400+ participantes
                            a
      4   FISL, Latinoware: trilhas de Python
      5   Grupos de Usu´rios, PythOn Campus, #horaextra
                       a




  Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
            e                                       Por que Python?
Python Brasil[7]
Encontro brasileiro da comunidade Python




  Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
            e                                       Por que Python?
Dorneles Trem´a: 1979 - 2011
                                        e



Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
          e                                       Por que Python?
1   Estes slides: slideshare.com/marrcandre
    2   google*: marcoandre@gmail.com
    3   twitter: @marrcandre
    4   blog: marrcandre.blogspot.com

 Para mais detalhes:
    1   Python, a arma secreta do Google:
        slideshare.net/ramalho/python-a-arma-secreta-do-google
    2   Python: cabe no seu bolso, no seu micro, no seu c´rebro:
                                                         e
        slideshare.net/rodsenra/unicampago2010pdf

              random.choice([’pergunta’, ’d´vida’, ’discuss˜o’])
                                           u               a



Marco Andr´ Lopes Mendes <marcoandre@gmail.com>
          e                                       Por que Python?

Mais conteúdo relacionado

Mais procurados

Por que Python? - FISL 10 - 2009
Por que Python? - FISL 10 - 2009Por que Python? - FISL 10 - 2009
Por que Python? - FISL 10 - 2009Marco Mendes
 
Por que Python? - Latinoware 2009
Por que Python? - Latinoware 2009Por que Python? - Latinoware 2009
Por que Python? - Latinoware 2009Marco Mendes
 
Por que Python? - FURB - 2009
Por que Python? - FURB - 2009Por que Python? - FURB - 2009
Por que Python? - FURB - 2009Marco Mendes
 
Python Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem PythonPython Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem Pythonantonio sérgio nogueira
 
Por que escolher Python?
Por que escolher Python?Por que escolher Python?
Por que escolher Python?Igor Leroy
 
Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Luiz Aldabalde
 
Apresentação Python Poli
Apresentação Python PoliApresentação Python Poli
Apresentação Python PoliRodrigo Lira
 
Seminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonSeminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonGiancarlo Silva
 
Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o pythonRodrigo Lira
 
Palestra Apresentando Python e Suas Aplicações
Palestra Apresentando Python e Suas AplicaçõesPalestra Apresentando Python e Suas Aplicações
Palestra Apresentando Python e Suas AplicaçõesMarcos Thomaz
 
Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3Marcel Caraciolo
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em PythonRodrigo Hübner
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Ramiro Luz
 

Mais procurados (20)

Por que Python? - FISL 10 - 2009
Por que Python? - FISL 10 - 2009Por que Python? - FISL 10 - 2009
Por que Python? - FISL 10 - 2009
 
Por que Python? - Latinoware 2009
Por que Python? - Latinoware 2009Por que Python? - Latinoware 2009
Por que Python? - Latinoware 2009
 
Por que Python? - FURB - 2009
Por que Python? - FURB - 2009Por que Python? - FURB - 2009
Por que Python? - FURB - 2009
 
Python Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem PythonPython Módulo Básico - Introdução a linguagem Python
Python Módulo Básico - Introdução a linguagem Python
 
Por que escolher Python?
Por que escolher Python?Por que escolher Python?
Por que escolher Python?
 
Python-Fenalivre-Imed
Python-Fenalivre-ImedPython-Fenalivre-Imed
Python-Fenalivre-Imed
 
Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011
 
Python Zope Plone - Tchelinux
Python Zope Plone - TchelinuxPython Zope Plone - Tchelinux
Python Zope Plone - Tchelinux
 
Python Zope Plone - Ftec
Python Zope Plone - FtecPython Zope Plone - Ftec
Python Zope Plone - Ftec
 
Apresentação Python Poli
Apresentação Python PoliApresentação Python Poli
Apresentação Python Poli
 
Python Zope Plone PloneConf 2013
Python Zope Plone PloneConf 2013Python Zope Plone PloneConf 2013
Python Zope Plone PloneConf 2013
 
Python Zope Plone - Fiocruz
Python Zope Plone - FiocruzPython Zope Plone - Fiocruz
Python Zope Plone - Fiocruz
 
Seminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonSeminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem Python
 
Por que Python?
Por que Python?Por que Python?
Por que Python?
 
Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o python
 
Palestra Apresentando Python e Suas Aplicações
Palestra Apresentando Python e Suas AplicaçõesPalestra Apresentando Python e Suas Aplicações
Palestra Apresentando Python e Suas Aplicações
 
Empreendendo com Python
Empreendendo com PythonEmpreendendo com Python
Empreendendo com Python
 
Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3Oficina Python: Hackeando a Web com Python 3
Oficina Python: Hackeando a Web com Python 3
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em Python
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.
 

Destaque

Configurando o Geany para Python - 03/2012
Configurando o Geany para Python - 03/2012Configurando o Geany para Python - 03/2012
Configurando o Geany para Python - 03/2012Marco Mendes
 
Configurando o geany_para_python
Configurando o geany_para_pythonConfigurando o geany_para_python
Configurando o geany_para_pythonMarco Mendes
 
Porque Python - FISL 9.0
Porque Python - FISL 9.0Porque Python - FISL 9.0
Porque Python - FISL 9.0Marco Mendes
 
Por que Python - Latinoware 2008
Por que Python - Latinoware 2008Por que Python - Latinoware 2008
Por que Python - Latinoware 2008Marco Mendes
 
Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10Marco Mendes
 
Uso de POO com Python - PyconBrasil 2
Uso de POO com Python - PyconBrasil 2Uso de POO com Python - PyconBrasil 2
Uso de POO com Python - PyconBrasil 2Marco Mendes
 
Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010
Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010
Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010Marco Mendes
 
Calculadora IP com libglade - PyconBrasil 2
Calculadora IP com libglade - PyconBrasil 2Calculadora IP com libglade - PyconBrasil 2
Calculadora IP com libglade - PyconBrasil 2Marco Mendes
 
Por que Python - PyConBrasil 2008
Por que Python - PyConBrasil 2008Por que Python - PyConBrasil 2008
Por que Python - PyConBrasil 2008Marco Mendes
 
Versões do Ubuntu
Versões do UbuntuVersões do Ubuntu
Versões do UbuntuMarco Mendes
 
Software Codigo Aberto Desktop
Software Codigo Aberto DesktopSoftware Codigo Aberto Desktop
Software Codigo Aberto DesktopMarco Mendes
 
Porque Python? FISL11
Porque Python? FISL11Porque Python? FISL11
Porque Python? FISL11Marco Mendes
 
Python na Ciência da Computação - FLISOL 2011
Python na Ciência da Computação - FLISOL 2011Python na Ciência da Computação - FLISOL 2011
Python na Ciência da Computação - FLISOL 2011Marco Mendes
 
Python no Ensino Superior - PyconBrasil 1
Python no Ensino Superior - PyconBrasil 1Python no Ensino Superior - PyconBrasil 1
Python no Ensino Superior - PyconBrasil 1Marco Mendes
 
Educação Continuada
Educação ContinuadaEducação Continuada
Educação ContinuadaMarco Mendes
 
Por que Python? - PythonBrasil[5] - 2009
Por que Python? - PythonBrasil[5] - 2009Por que Python? - PythonBrasil[5] - 2009
Por que Python? - PythonBrasil[5] - 2009Marco Mendes
 
Educação continuada
Educação continuadaEducação continuada
Educação continuadaMarco Mendes
 
Resumo, Resenha e Resenha Crítica
Resumo, Resenha e Resenha CríticaResumo, Resenha e Resenha Crítica
Resumo, Resenha e Resenha CríticaMarco Mendes
 
Segurança da Informação
Segurança da InformaçãoSegurança da Informação
Segurança da InformaçãoMarco Mendes
 

Destaque (20)

Configurando o Geany para Python - 03/2012
Configurando o Geany para Python - 03/2012Configurando o Geany para Python - 03/2012
Configurando o Geany para Python - 03/2012
 
Configurando o geany_para_python
Configurando o geany_para_pythonConfigurando o geany_para_python
Configurando o geany_para_python
 
Porque Python - FISL 9.0
Porque Python - FISL 9.0Porque Python - FISL 9.0
Porque Python - FISL 9.0
 
Por que Python - Latinoware 2008
Por que Python - Latinoware 2008Por que Python - Latinoware 2008
Por que Python - Latinoware 2008
 
Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10
 
Uso de POO com Python - PyconBrasil 2
Uso de POO com Python - PyconBrasil 2Uso de POO com Python - PyconBrasil 2
Uso de POO com Python - PyconBrasil 2
 
Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010
Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010
Python em um curso de Ciência da Computação - CALCOMP - FURB - 2010
 
Calculadora IP com libglade - PyconBrasil 2
Calculadora IP com libglade - PyconBrasil 2Calculadora IP com libglade - PyconBrasil 2
Calculadora IP com libglade - PyconBrasil 2
 
Por que Python - PyConBrasil 2008
Por que Python - PyConBrasil 2008Por que Python - PyConBrasil 2008
Por que Python - PyConBrasil 2008
 
Versões do Ubuntu
Versões do UbuntuVersões do Ubuntu
Versões do Ubuntu
 
Software Codigo Aberto Desktop
Software Codigo Aberto DesktopSoftware Codigo Aberto Desktop
Software Codigo Aberto Desktop
 
Porque Python? FISL11
Porque Python? FISL11Porque Python? FISL11
Porque Python? FISL11
 
Python na Ciência da Computação - FLISOL 2011
Python na Ciência da Computação - FLISOL 2011Python na Ciência da Computação - FLISOL 2011
Python na Ciência da Computação - FLISOL 2011
 
Python no Ensino Superior - PyconBrasil 1
Python no Ensino Superior - PyconBrasil 1Python no Ensino Superior - PyconBrasil 1
Python no Ensino Superior - PyconBrasil 1
 
Educação Continuada
Educação ContinuadaEducação Continuada
Educação Continuada
 
Por que Python? - PythonBrasil[5] - 2009
Por que Python? - PythonBrasil[5] - 2009Por que Python? - PythonBrasil[5] - 2009
Por que Python? - PythonBrasil[5] - 2009
 
Porque Python?
Porque Python?Porque Python?
Porque Python?
 
Educação continuada
Educação continuadaEducação continuada
Educação continuada
 
Resumo, Resenha e Resenha Crítica
Resumo, Resenha e Resenha CríticaResumo, Resenha e Resenha Crítica
Resumo, Resenha e Resenha Crítica
 
Segurança da Informação
Segurança da InformaçãoSegurança da Informação
Segurança da Informação
 

Semelhante a 10 Razões para aprender Python

Por que Python?
Por que Python?Por que Python?
Por que Python?gsroma
 
Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?Marcel Caraciolo
 
Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609gsroma
 
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?Humberto Diógenes
 
Algoritmos e programacao_em_python
Algoritmos e programacao_em_pythonAlgoritmos e programacao_em_python
Algoritmos e programacao_em_pythonArtur Santos
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)Rudá Moura
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Rudá Moura
 
Porque python é legal! d
Porque python é legal!  dPorque python é legal!  d
Porque python é legal! dJoelmir Ribacki
 
Introducao ao python - Luciana Mota
Introducao ao python - Luciana MotaIntroducao ao python - Luciana Mota
Introducao ao python - Luciana Motalucianacmota
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem PythonLuciano Ramalho
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoandreluizlugon
 
Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)
Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)
Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)Sidney Roberto
 

Semelhante a 10 Razões para aprender Python (15)

Por que Python?
Por que Python?Por que Python?
Por que Python?
 
Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?Python e 10 motivos por que devo conhece-la ?
Python e 10 motivos por que devo conhece-la ?
 
Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609
 
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
WSGI: a resposta para a questão definitiva sobre Python, a web e tudo mais?
 
Algoritmos e programacao_em_python
Algoritmos e programacao_em_pythonAlgoritmos e programacao_em_python
Algoritmos e programacao_em_python
 
AulaPython.pdf
AulaPython.pdfAulaPython.pdf
AulaPython.pdf
 
WSGI - PyCon Brasil 2008
WSGI - PyCon Brasil 2008WSGI - PyCon Brasil 2008
WSGI - PyCon Brasil 2008
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
 
Por Que Python É Tão Lento?
Por Que Python É Tão Lento?Por Que Python É Tão Lento?
Por Que Python É Tão Lento?
 
Porque python é legal! d
Porque python é legal!  dPorque python é legal!  d
Porque python é legal! d
 
Python: Por Onde Começar e Aplicações
Python: Por Onde Começar e AplicaçõesPython: Por Onde Começar e Aplicações
Python: Por Onde Começar e Aplicações
 
Introducao ao python - Luciana Mota
Introducao ao python - Luciana MotaIntroducao ao python - Luciana Mota
Introducao ao python - Luciana Mota
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)
Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)
Vamos aprender algo diferente? Introdução à linguagem Python (aula 1)
 

Último

PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...HELENO FAVACHO
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfHELENO FAVACHO
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxedelon1
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfRavenaSales1
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfLuizaAbaAba
 

Último (20)

PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdfPROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
PROJETO DE EXTENSÃO - EDUCAÇÃO FÍSICA BACHARELADO.pdf
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 

10 Razões para aprender Python

  • 1. Por que Python? 10 raz˜es para aprender Python o Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e 20 de outubro de 2011 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 2. Uma breve introdu¸˜o ca desse que vos fala 1 Mestre em Ciˆncia da Computa¸˜o pela UFSC e ca 2 Professor do Instituto Federal Catarinense 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 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 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 Orientada ` objetos, estruturada e funcional a 6 Tipagem forte e dinˆmica a 7 Multiplataforma 8 Interpretada 9 Ambiente interativo 10 Licen¸a compat´ com a GPL c ıvel Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 4. 1 - Python ´ legal e 1 Simples arquivo = open ( " emails . txt " ) dominios = {} 2 Leg´ ıvel for contato in arquivo : resto , dominio = contato . split ( " @ " ) 3 Clara dominio = dominio . replace ( " r n " , " " ) 4 Simplificada if dominio in dominios : dominios [ dominio ] += 1 5 Sofisticada else : dominios [ dominio ] = 1 6 Poderosa arquivo . close () arquivo = open ( " dominios . txt " , " w " ) for dominio in dominios . keys (): registro = " % s ;% s n " %( dominio , dominios [ dominio ]) arquivo . write ( registro ) arquivo . close () Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 5. 2 - Python j´ vem com os acess´rios a o Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 6. 3 - Python ´ utilizado l´ fora e a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 7. 3 - Python ´ utilizado l´ fora e a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 8. 3 - Python ´ utilizado l´ fora e a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 9. 4 - Python ´ utilizado aqui dentro e LZT: AutoSystem Instituto Nokia de Tecnologia InVesalius Async: Stoq Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 10. 5 - Python ´ utilizado na web ao redor do mundo e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 11. 5 - Python ´ utilizado na web ao redor do mundo e Diversos frameworks Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 12. 6 - Python ´ utilizado na web aqui no Brasil e brasil.gov.br globo.com uiner.com vericia.com Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 13. 6 - Python ´ utilizado na web aqui no Brasil e certsign.com.br ucs.br serpro.gov.br atepassar.com.br Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 14. 7 - Tem emprego para programadores Python python.org/community/jobs google.com.br/intl/en/jobs/ empregos.trovitbrasil.com.br/python twitter.com/python_jobs Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 15. 8 - Python conversa com as outras linguagens 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?
  • 16. 8 - Python conversa com as outras linguagens 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 ) Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 17. 8 - Python conversa com as outras linguagens 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 ()) Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 18. 8 - Python conversa com as outras linguagens Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 19. 9 - Python ´ multiplataforma e At´ aqui, nada de surpreendente, certo? e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 20. 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 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 21. 9 - Python ´ multiplataforma e Dispositivos m´veis o Android Iphone Symbian Meego/Maemo Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 22. 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?
  • 23. 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?
  • 24. 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) Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 25. 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 Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 26. Bˆnus 2: 12 - Existe uma comunidade forte o vocˆ tem com quem contar e 1 Lista python-brasil: +3650 membros, 500 mensagens/mˆs. e 2 Associa¸˜o Python Brasil: amadurecimento da comunidade ca 3 PythonBrasil[7]: S˜o Paulo, 400+ participantes a 4 FISL, Latinoware: trilhas de Python 5 Grupos de Usu´rios, PythOn Campus, #horaextra a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 27. Python Brasil[7] Encontro brasileiro da comunidade Python Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 28. Dorneles Trem´a: 1979 - 2011 e Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?
  • 29. 1 Estes slides: slideshare.com/marrcandre 2 google*: marcoandre@gmail.com 3 twitter: @marrcandre 4 blog: marrcandre.blogspot.com Para mais detalhes: 1 Python, a arma secreta do Google: slideshare.net/ramalho/python-a-arma-secreta-do-google 2 Python: cabe no seu bolso, no seu micro, no seu c´rebro: e slideshare.net/rodsenra/unicampago2010pdf random.choice([’pergunta’, ’d´vida’, ’discuss˜o’]) u a Marco Andr´ Lopes Mendes <marcoandre@gmail.com> e Por que Python?