SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Roteiro
   Afinal, o que é Python?
   O interpretador
   Sintaxe básica
   Controle de fluxo
   Estruturas de dados
   Funções
   Classes
   Módulos e Standard Library

                                   Python:
                                 Introdução
O que é Python?
   Interpretada, VHLL
   Criada por Guido van Rossum em 1989
   Multiplataforma
   OO, Procedural e funcional
   Software livre
   Baterias incluídas!
   Sintaxe elegante, simples e clara
   Tipagem dinãmica e forte

                                   Python:
                                 Introdução
Onde é usada?
   Empresas:
    – Google
    – NASA
    – SERPRO (...)
   Software:
    – Trac
    – GIMP
    – Blender
    – GNOME (...)

                                  Python:
                                Introdução
Onde roda?
   UNIX likes:
    – GNU/Linux (maioria vem por padrão)
    – Mac OS X (sempre por padrão)
   Windows (tem que instalar)
   Nokia Series 60
   ...




                                       Python:
                                     Introdução
Aplicações
   Scripts
   Computação gráfica
   Web:
    – web2py :-)
    – Django
    – Zope
    – ...
   Jogos
   Programas em geral (GUI)
                                 Python:
                               Introdução
História




             Python:
           Introdução
Características e
             Vantagens
   Fácil de aprender
   Poderosa
   Alta produtividade
   Estruturas de dados de alto nível:
    tuplas, listas, dicionários, ...
   Linguagem dinâmica -> runtime!
   Blocos de código são delimitados
    por endentação (!?)
                                Python:
                              Introdução
Interpretador e Shell
   Interpretador interativo:
    – "python" (shell)
    – "python arquivo.py" (interpretador)
   IPython




                                    Python:
                                  Introdução
Tipos de dados
   Tipos básicos:
    – Inteiro: 42
    – Ponto flutuante: 3.14
    – Complexo (!): 1.5 + 5.3j
    – String: “””minha string”””
   Estruturas de alto nível:
    – Tuplas: (1, “aaa”)
    – Listas: [1, 2.3, “abc”, [1, “b”]]
    – Dicionários: {'a': 1, 2: 'b', [1, 2]:
      [3, 4]}
                                     Python:
                                   Introdução
Controle de Fluxo
Nada de parênteses! Nada de chaves!
if expressão:
   Comando1
   ...
elif expressão2:
   Comando3
   ...
else:
   ...


                             Python:
                           Introdução
Controle de Fluxo (2)
for i in iterable:
   Comando1
   Comando2
   ...
while expressão2:
   Comando3
   ...
iterable → list, range(), dict, ...
break, continue, pass, for ... else


                             Python:
                           Introdução
Funções
def nome(args):
     Comando1
     ...
     [return X]
   *args
   **args
   arg1=valor, arg2=valor, ...
   lambda
   docstrings

                                Python:
                              Introdução
Módulos
• arq.py
• import arq
• arq.X
• arq.f()
• f2 = arq.f
• arq.__name__
• from arq import X, f
• from arq import *

                             Python:
                           Introdução
Arquivos
   open('nome', 'formato')
    – formato = rw, r, ...
   fp.
    – read()
    – readlines()
    – write()
    – writelines()
    – close()
   for l in fp: print l

                                 Python:
                               Introdução
Classes
class Nome:
 “””Essa é a minha classe...
 que não faz muita coisa”””


 self.atributo = valor
 def método(self, args...):
   cmd...




                                 Python:
                               Introdução
Classes (2)
   __init__()
   Overload of operators
   Métodos fora das classes:
    def f1(self, a, ...):
      ...
    class teste:
      f = f1
      def f2(self, b, ...): ...
   Herança [múltipla]

                                    Python:
                                  Introdução
Baterias incluídas
   sys, os, re, string, zlib
   socket, urrlib, httplib, imaplib
   time, datetime, math, random
   doctest, unittest, xml, xmlrpclib
   struct, pickle, cPickle, threading
   logging, decimal
   ...


                                  Python:
                                Introdução
Outras Bibliotecas
   NumPy
   SciPy
   MatplotLib
   PyODE
   Python-OpenGL
   Twisted Matrix
   ...


                            Python:
                          Introdução
The Zen of Python
>>> import this




                       Python:
                     Introdução
www.python.org
   PEPs
   Python Library Reference
   Python Manual Reference
   PyPI
   Implementações:
    – CPython
    – Jython
    – IronPython
    – PyPy
                                  Python:
                                Introdução
Sites interessantes
PythOnRio:
http://br.groups.yahoo.com/group/pythonrio/
Python Brasil:
http://www.python.org.br/
web2py:
http://www.web2py.com/
web2py-users-brazil:
http://groups.google.com/group/
                   web2py-users-brazil/

                                    Python:
                                  Introdução

Weitere ähnliche Inhalte

Was ist angesagt?

Aula 01 fundamentos da informática
Aula 01   fundamentos da informáticaAula 01   fundamentos da informática
Aula 01 fundamentos da informática
Gilberto Campos
 
Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4
Scratch_TCC
 

Was ist angesagt? (20)

Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para Web
 
Variáveis e portugol
Variáveis e portugolVariáveis e portugol
Variáveis e portugol
 
Algoritmos em portugol
Algoritmos em portugolAlgoritmos em portugol
Algoritmos em portugol
 
Aula 9 - Estruturas Condicionais
Aula 9 - Estruturas CondicionaisAula 9 - Estruturas Condicionais
Aula 9 - Estruturas Condicionais
 
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1
 
Linguagem SQL
Linguagem SQLLinguagem SQL
Linguagem SQL
 
Introdução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosIntrodução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos Básicos
 
Historia das redes de computadores
Historia das redes de computadoresHistoria das redes de computadores
Historia das redes de computadores
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)
 
Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
 
Aula 01 fundamentos da informática
Aula 01   fundamentos da informáticaAula 01   fundamentos da informática
Aula 01 fundamentos da informática
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Linguagem C - Strings
Linguagem C - StringsLinguagem C - Strings
Linguagem C - Strings
 
Algoritmos - Pseudocódigo
Algoritmos - PseudocódigoAlgoritmos - Pseudocódigo
Algoritmos - Pseudocódigo
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Apresentacao TCC
Apresentacao TCCApresentacao TCC
Apresentacao TCC
 
Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4Aula 0. introdução ao scratch 1.4
Aula 0. introdução ao scratch 1.4
 
Visualg
VisualgVisualg
Visualg
 

Andere mochten auch

Andere mochten auch (9)

[DevInRio] Construindo robôs com software e hardware livres
[DevInRio] Construindo robôs com software e hardware livres[DevInRio] Construindo robôs com software e hardware livres
[DevInRio] Construindo robôs com software e hardware livres
 
Software Livre versus Open Source
Software Livre versus Open SourceSoftware Livre versus Open Source
Software Livre versus Open Source
 
Arduino: Brincando de eletrônica com Python e Hardware Livre
Arduino: Brincando de eletrônica com Python e Hardware LivreArduino: Brincando de eletrônica com Python e Hardware Livre
Arduino: Brincando de eletrônica com Python e Hardware Livre
 
Introdução a Programação com Python
Introdução a Programação com PythonIntrodução a Programação com Python
Introdução a Programação com Python
 
Datos Tabulares: La Manera Pythónica
Datos Tabulares: La Manera PythónicaDatos Tabulares: La Manera Pythónica
Datos Tabulares: La Manera Pythónica
 
Apresentação da ArcelorMittal
Apresentação da ArcelorMittalApresentação da ArcelorMittal
Apresentação da ArcelorMittal
 
Libertando dados públicos com ferramentas livres
Libertando dados públicos com ferramentas livresLibertando dados públicos com ferramentas livres
Libertando dados públicos com ferramentas livres
 
Processo de fabricação - Ferro-Gusa -> Aço
Processo de fabricação - Ferro-Gusa -> AçoProcesso de fabricação - Ferro-Gusa -> Aço
Processo de fabricação - Ferro-Gusa -> Aço
 
Aprenda a Programar Direito!
Aprenda a Programar Direito!Aprenda a Programar Direito!
Aprenda a Programar Direito!
 

Ähnlich wie Python

Comsolid2011 Introdução Python
Comsolid2011 Introdução PythonComsolid2011 Introdução Python
Comsolid2011 Introdução Python
Gleison Rodrigues
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo Tutorial
Fabio Spanhol
 
Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609
gsroma
 
Linguagem Python
Linguagem PythonLinguagem Python
Linguagem Python
Natã Melo
 

Ähnlich wie Python (20)

Aula python
Aula pythonAula python
Aula python
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a Python
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em Python
 
Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - Português
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação Python
 
Comsolid2011 Introdução Python
Comsolid2011 Introdução PythonComsolid2011 Introdução Python
Comsolid2011 Introdução Python
 
Administração de sistemas usando Python
Administração de sistemas usando PythonAdministração de sistemas usando Python
Administração de sistemas usando Python
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
 
Arduino e Python: Do It Yourself
Arduino e Python: Do It YourselfArduino e Python: Do It Yourself
Arduino e Python: Do It Yourself
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações web
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo Tutorial
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Python
 
Canivete suíço do Python
Canivete suíço do PythonCanivete suíço do Python
Canivete suíço do Python
 
Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609Python Pythononcampus Uva 060609
Python Pythononcampus Uva 060609
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
 
Introducao ao python - Luciana Mota
Introducao ao python - Luciana MotaIntroducao ao python - Luciana Mota
Introducao ao python - Luciana Mota
 
Tutorial Python ed. #2
Tutorial Python ed. #2Tutorial Python ed. #2
Tutorial Python ed. #2
 
Linguagem Python
Linguagem PythonLinguagem Python
Linguagem Python
 
Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)
 
Linguagem Python
Linguagem PythonLinguagem Python
Linguagem Python
 

Mehr von Álvaro Justen

Mehr von Álvaro Justen (20)

Sobre os ombos de gigantes
Sobre os ombos de gigantesSobre os ombos de gigantes
Sobre os ombos de gigantes
 
Projeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Projeto Brasil.IO COVID-19: Dados Públicos AcessíveisProjeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Projeto Brasil.IO COVID-19: Dados Públicos Acessíveis
 
Dados abertos, Python e PostgreSQL: a combinação perfeita
Dados abertos, Python e PostgreSQL: a combinação perfeitaDados abertos, Python e PostgreSQL: a combinação perfeita
Dados abertos, Python e PostgreSQL: a combinação perfeita
 
A era da pós-verdade - minhas reflexões e crenças
A era da pós-verdade - minhas reflexões e crençasA era da pós-verdade - minhas reflexões e crenças
A era da pós-verdade - minhas reflexões e crenças
 
Realmente precisamos de big data?
Realmente precisamos de big data?Realmente precisamos de big data?
Realmente precisamos de big data?
 
Ciência de Dados na Linha de Comando
Ciência de Dados na Linha de ComandoCiência de Dados na Linha de Comando
Ciência de Dados na Linha de Comando
 
Brasil.IO: Libertação de Dados Públicos, com Python
Brasil.IO: Libertação de Dados Públicos, com PythonBrasil.IO: Libertação de Dados Públicos, com Python
Brasil.IO: Libertação de Dados Públicos, com Python
 
#opendata #fail: Causos da Transparência Brasileira
#opendata #fail: Causos da Transparência Brasileira#opendata #fail: Causos da Transparência Brasileira
#opendata #fail: Causos da Transparência Brasileira
 
Brasil.IO: Dados Abertos para Mais Democracia
Brasil.IO: Dados Abertos para Mais DemocraciaBrasil.IO: Dados Abertos para Mais Democracia
Brasil.IO: Dados Abertos para Mais Democracia
 
Dados abertos, direito autoral e democracia
Dados abertos, direito autoral e democraciaDados abertos, direito autoral e democracia
Dados abertos, direito autoral e democracia
 
Jornalismo de Dados: Programando a Democracia no Brasil
Jornalismo de Dados: Programando a Democracia no BrasilJornalismo de Dados: Programando a Democracia no Brasil
Jornalismo de Dados: Programando a Democracia no Brasil
 
Python no Jornalismo
Python no JornalismoPython no Jornalismo
Python no Jornalismo
 
Introdução a programação com Python (para jornalistas)
Introdução a programação com Python (para jornalistas)Introdução a programação com Python (para jornalistas)
Introdução a programação com Python (para jornalistas)
 
[FISL17] Liberando dados com um comando, por Álvaro Justen
[FISL17] Liberando dados com um comando, por Álvaro Justen[FISL17] Liberando dados com um comando, por Álvaro Justen
[FISL17] Liberando dados com um comando, por Álvaro Justen
 
Arduino (para fazedores)
Arduino (para fazedores)Arduino (para fazedores)
Arduino (para fazedores)
 
Dados tabulares: A Maneira Pythônica
Dados tabulares: A Maneira PythônicaDados tabulares: A Maneira Pythônica
Dados tabulares: A Maneira Pythônica
 
[PyBr11] Lendo dados tabulares: versão pythônica
[PyBr11] Lendo dados tabulares: versão pythônica[PyBr11] Lendo dados tabulares: versão pythônica
[PyBr11] Lendo dados tabulares: versão pythônica
 
Arduino: Robótica e Automação com Software e Hardware Livres
Arduino: Robótica e Automação com Software e Hardware LivresArduino: Robótica e Automação com Software e Hardware Livres
Arduino: Robótica e Automação com Software e Hardware Livres
 
Capturando dados com Python - UAI Python
Capturando dados com Python - UAI PythonCapturando dados com Python - UAI Python
Capturando dados com Python - UAI Python
 
Introdução ao Arduino: ArduinoDay Rio 2015
Introdução ao Arduino: ArduinoDay Rio 2015Introdução ao Arduino: ArduinoDay Rio 2015
Introdução ao Arduino: ArduinoDay Rio 2015
 

Kürzlich hochgeladen

Kürzlich hochgeladen (8)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

Python

  • 1. Roteiro  Afinal, o que é Python?  O interpretador  Sintaxe básica  Controle de fluxo  Estruturas de dados  Funções  Classes  Módulos e Standard Library Python: Introdução
  • 2. O que é Python?  Interpretada, VHLL  Criada por Guido van Rossum em 1989  Multiplataforma  OO, Procedural e funcional  Software livre  Baterias incluídas!  Sintaxe elegante, simples e clara  Tipagem dinãmica e forte Python: Introdução
  • 3. Onde é usada?  Empresas: – Google – NASA – SERPRO (...)  Software: – Trac – GIMP – Blender – GNOME (...) Python: Introdução
  • 4. Onde roda?  UNIX likes: – GNU/Linux (maioria vem por padrão) – Mac OS X (sempre por padrão)  Windows (tem que instalar)  Nokia Series 60  ... Python: Introdução
  • 5. Aplicações  Scripts  Computação gráfica  Web: – web2py :-) – Django – Zope – ...  Jogos  Programas em geral (GUI) Python: Introdução
  • 6. História Python: Introdução
  • 7. Características e Vantagens  Fácil de aprender  Poderosa  Alta produtividade  Estruturas de dados de alto nível: tuplas, listas, dicionários, ...  Linguagem dinâmica -> runtime!  Blocos de código são delimitados por endentação (!?) Python: Introdução
  • 8. Interpretador e Shell  Interpretador interativo: – "python" (shell) – "python arquivo.py" (interpretador)  IPython Python: Introdução
  • 9. Tipos de dados  Tipos básicos: – Inteiro: 42 – Ponto flutuante: 3.14 – Complexo (!): 1.5 + 5.3j – String: “””minha string”””  Estruturas de alto nível: – Tuplas: (1, “aaa”) – Listas: [1, 2.3, “abc”, [1, “b”]] – Dicionários: {'a': 1, 2: 'b', [1, 2]: [3, 4]} Python: Introdução
  • 10. Controle de Fluxo Nada de parênteses! Nada de chaves! if expressão: Comando1 ... elif expressão2: Comando3 ... else: ... Python: Introdução
  • 11. Controle de Fluxo (2) for i in iterable: Comando1 Comando2 ... while expressão2: Comando3 ... iterable → list, range(), dict, ... break, continue, pass, for ... else Python: Introdução
  • 12. Funções def nome(args): Comando1 ... [return X]  *args  **args  arg1=valor, arg2=valor, ...  lambda  docstrings Python: Introdução
  • 13. Módulos • arq.py • import arq • arq.X • arq.f() • f2 = arq.f • arq.__name__ • from arq import X, f • from arq import * Python: Introdução
  • 14. Arquivos  open('nome', 'formato') – formato = rw, r, ...  fp. – read() – readlines() – write() – writelines() – close()  for l in fp: print l Python: Introdução
  • 15. Classes class Nome: “””Essa é a minha classe... que não faz muita coisa””” self.atributo = valor def método(self, args...): cmd... Python: Introdução
  • 16. Classes (2)  __init__()  Overload of operators  Métodos fora das classes: def f1(self, a, ...): ... class teste: f = f1 def f2(self, b, ...): ...  Herança [múltipla] Python: Introdução
  • 17. Baterias incluídas  sys, os, re, string, zlib  socket, urrlib, httplib, imaplib  time, datetime, math, random  doctest, unittest, xml, xmlrpclib  struct, pickle, cPickle, threading  logging, decimal  ... Python: Introdução
  • 18. Outras Bibliotecas  NumPy  SciPy  MatplotLib  PyODE  Python-OpenGL  Twisted Matrix  ... Python: Introdução
  • 19. The Zen of Python >>> import this Python: Introdução
  • 20. www.python.org  PEPs  Python Library Reference  Python Manual Reference  PyPI  Implementações: – CPython – Jython – IronPython – PyPy Python: Introdução