SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
Allisson Barros 12/0055619
Daniel Luz 13/0007714
Leandro Bergmann 14/0149007
Luiz Fernando Vieira 13/0013757
Uriel Silva 12/0137232
Início da
Implementação
1989
1990
Lançamento
CWI
Python 0.9.0
alt.sources
1991
1992
Python 0.9.5
Apenas Mac
Python 1.0
1994
2000
Python 1.6
Python 2.0
BeOpen.com
2000
Python 2.1
PSF
2001
2001
Licença GPL
Python 2.1.1
2008
Python 3.0
Python 2.6
Transição
2008
Python 2.7.10
Versão 2.x Atual
2015
2015
Python 3.4.3
Versão 3.x Atual
Python 1.6
Suporte para Unicode
Regular Expression Engine
Pacote distutils - Instalação e
distribuição
Novas APIs em C para alocação de
memória
Reestruturação da IDE padrão IDLE
Python 2.1
Novo tipo nativo - Unicode String
Utilização do SourceForge
Novo tratamendo de Listas – Haskell
Novos operadores de atribuição
Mudanças no Garbage Collector
Módulos XML
Python 2.6
Transição para o Python 3.0
Inclusão de novos Pacotes – json e
multiprocessing
Python 3.x
Reestruturação da Linguagem
Novo formato de Documentação
Roundup como novo bug tracker
print como função
Nova biblioteca de I/O
Mudanças de sintaxePython 2.7.10
Versão 2.x mais estável
Melhora no tratamento de floats e
Decimals
Novas Classes Counter e
OrderedDict
Procedural
Funcional
Orientado a Objetos
Científico
Comercial
Inteligência Artificial
Estudantes
Pesquisadores
Paradigmas Domínios
Usuários
Procedural Funcional
Utiliza funções aplicadas a
determinados parâmetros como
principal meio de execução
Utiliza comandos de atribuição e
segue a ordem do código
durante a execução
Utiliza abstrações dos dados,
encapsulando-os em objetos
com restrições de acesso,
herança e vinculação
Orientação a Objetos
Astropy
Biopython
Numpy
TomoPy
GNU Mailman
Django
Kivy
Scikit-learn
Científico Comercial
Inteligência Artificial
Científico
Comercial
Inteligência Artificial
Estudantes
Pesquisadores
Usuários Gerais
Comandos
if / else
for
while
try / except
Tipos Primitivos
Boolean
Int / Float / Complex
Char / String
List
Tuple
Dictionary
Funções
def
Classes
Funções Anônimas
Outros
Palavras reservadas
Variáveis
Operadores
Identação
Tipos Primitivos
Números (int, float, complex)
Booleano
String
Lista
Tupla
Dicionário
–
Funções
def
Funções
Classes
Funções
–
Funções Anônimas
–
Comandos
If / elif / else
while
for
Comandos
try except
–
Outros
Palavras reservadas
and del from not while
as elif global or with
assert else if pass yield
break except import print class
exc in raise continue finally
is return def for lambda
try False True nonlocal
Outros
Variáveis com tipagem dinâmica
Inicialização múltipla
Outros
Operadores (lógicos,
relacionais e aritméticos)
Outros
Sem delimitadores de bloco
Identação é obrigatória
Legibilidade Capacidade de Escrita
Simplicidade Global
Tipos de Dados
Abstração
Aspectos da Sintaxe
Abstração
Expressividade
Legibilidade Capacidade de Escrita
Simplicidade Global
Tipos de Dados
Abstração
Aspectos da Sintaxe
Abstração
Expressividade
Simplicidade Global
Poucos componentes básicos
Poucas palavras reservadas
Bom
and del from not while
as elif global or with
assert else if pass yield
break except import print class
exc in raise continue finally
is return def for lambda
try False True nonlocal
Tipos de Dados
Facilidade para criar tipos
Bom
Tipos de Dados
Tipagem dinâmica
Ruim
Abstração
Linguagem de Alto Nível
Dificuldade para entender os
objetos
Ruim
Aspectos da Sintaxe
Identação por blocos
Bom
Legibilidade Capacidade de Escrita
Simplicidade Global
Tipos de Dados
Abstração
Aspectos da Sintaxe
Abstração
Expressividade
Abstração
Funcional
Orientada a Objetos
Bom
Expressividade
Funcional
Orientada a Objetos
Bom
Confiabilidade Custo
Verificação de Tipos
Tratamento de tipos
Aliasing
Treinamento
Implementação
Compilação/interpretação
Execução
Manutenação
Treinamento
Implementação
Compilação/interpretação
Execução
Manutenação
Confiabilidade Custo
Verificação de Tipos
Tratamento de tipos
Aliasing
Verificação de tipos
Verificação dinâmica
Runtime
Existência de Erros
Ruim
Tratamento de Exceções Bom
Aliasing
Objetos com mesmo nome
Ruim
Confiabilidade Custo
Verificação de Tipos
Tratamento de tipos
Aliasing
Treinamento
Execução
Manutenação
http://blog.codeeval.com/codeevalblog/2015#.VYDWMPlViko=
Alta legibilidade
Curva de Aprendizado
Treinamento Baixo
http://benchmarksgame.alioth.debian.org/
Execução Alto
12
16
20
20.06 488.800.43 0.88 1.49 21.118.44
Java
Ruby
Python
176.22
Manutenção Baixo
Boa legibilidade
Vasta documentação
Depende da aplicação
Moderado
Portabilidade Generalidade
Padronização
Multi-plataforma
Vários Domínios
Mobile, Web, Desktop
Data Mining
Jogos
Qualidade da Definição
Documentação (python.org)
Suporte da comunidade
Gramática
Processamento de grande
quantidade de dados
Manipulação de strings e listas
Data mining
Fácil conexão com banco de dados
Grande quantidade de BIFs
XML
Motivos
libxml2
Libxslt
Bibliotecas para parse de
documentos XML
JAXP
Criada em cima do xslt capaz
de alterar a estrutura de dados
XML
C Java
libxml++
Essa API é capaz de realizar
atividades comuns com menos
linhas de código
lxml
ElementTree
Junção de libs como libxml2 e
libxslt
C++ Python
Tag
Atributo
Texto
Childs
ElementTree
http://lpunb.wikia.com/wiki/Semin%C3%A1rio_sobre_Python_-_LP_1/2015_-_Grupo_2

Mais conteúdo relacionado

Mais procurados

Variáveis, constantes e tipos de dados
Variáveis, constantes e tipos de dadosVariáveis, constantes e tipos de dados
Variáveis, constantes e tipos de dadosBrunoSilvaSantana
 
Python Programming language
Python Programming languagePython Programming language
Python Programming languageHadeelAlbedah
 
Sistemas operacionais escalonamento de processos
Sistemas operacionais  escalonamento de processosSistemas operacionais  escalonamento de processos
Sistemas operacionais escalonamento de processosTalles Nascimento Rodrigues
 
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
 
Normas powerpoint esaof
Normas powerpoint esaofNormas powerpoint esaof
Normas powerpoint esaofEduardo Roque
 
Python programming introduction
Python programming introductionPython programming introduction
Python programming introductionSiddique Ibrahim
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPLorranna Machado
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonPriscila Mayumi
 
An Introduction to Python Programming
An Introduction to Python ProgrammingAn Introduction to Python Programming
An Introduction to Python ProgrammingMorteza Zakeri
 
Overview of python 2019
Overview of python 2019Overview of python 2019
Overview of python 2019Samir Mohanty
 
Princípios da engenharia de software (marcello thiry)
Princípios da engenharia de software (marcello thiry)Princípios da engenharia de software (marcello thiry)
Princípios da engenharia de software (marcello thiry)Marcello Thiry
 

Mais procurados (20)

Variáveis, constantes e tipos de dados
Variáveis, constantes e tipos de dadosVariáveis, constantes e tipos de dados
Variáveis, constantes e tipos de dados
 
Python Programming language
Python Programming languagePython Programming language
Python Programming language
 
Algoritmos - capítulo 1
Algoritmos - capítulo 1Algoritmos - capítulo 1
Algoritmos - capítulo 1
 
Python made easy
Python made easy Python made easy
Python made easy
 
Python
PythonPython
Python
 
Sistemas operacionais escalonamento de processos
Sistemas operacionais  escalonamento de processosSistemas operacionais  escalonamento de processos
Sistemas operacionais escalonamento de processos
 
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
 
Normas powerpoint esaof
Normas powerpoint esaofNormas powerpoint esaof
Normas powerpoint esaof
 
Python programming introduction
Python programming introductionPython programming introduction
Python programming introduction
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHP
 
Compiler1
Compiler1Compiler1
Compiler1
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 
Python Tutorial
Python TutorialPython Tutorial
Python Tutorial
 
An Introduction to Python Programming
An Introduction to Python ProgrammingAn Introduction to Python Programming
An Introduction to Python Programming
 
Inteligência Artificial em Jogos
Inteligência Artificial em JogosInteligência Artificial em Jogos
Inteligência Artificial em Jogos
 
Overview of python 2019
Overview of python 2019Overview of python 2019
Overview of python 2019
 
Princípios da engenharia de software (marcello thiry)
Princípios da engenharia de software (marcello thiry)Princípios da engenharia de software (marcello thiry)
Princípios da engenharia de software (marcello thiry)
 
Python tutorial
Python tutorialPython tutorial
Python tutorial
 
Python Kelas XI.ppt
Python Kelas XI.pptPython Kelas XI.ppt
Python Kelas XI.ppt
 
Python by Rj
Python by RjPython by Rj
Python by Rj
 

Semelhante a Seminário de Python - LP 1/2015 - Grupo 2

Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Flávio Ribeiro
 
Python - Visão Geral
Python - Visão GeralPython - Visão Geral
Python - Visão Geralyuriploc
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Pythonguestac3de
 
Python - Introdução Básica
Python - Introdução BásicaPython - Introdução Básica
Python - Introdução BásicaChristian Perone
 
python_para_desenvolvedores.pdf
python_para_desenvolvedores.pdfpython_para_desenvolvedores.pdf
python_para_desenvolvedores.pdfProfIvanSaboia
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação PythonJunior Sobrenome
 
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êsHelio Colombe
 
Tradutor de Pig Latin
Tradutor de Pig LatinTradutor de Pig Latin
Tradutor de Pig LatinElen Arantza
 
Automacao com Python.pdf
Automacao com Python.pdfAutomacao com Python.pdf
Automacao com Python.pdfSecont
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonOsvaldo Santana Neto
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoandreluizlugon
 
dotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET CoredotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET CoreRogério Moraes de Carvalho
 
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF CoreExplorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF CoreRogério Moraes de Carvalho
 
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 webAlvaro Oliveira
 

Semelhante a Seminário de Python - LP 1/2015 - Grupo 2 (20)

Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
 
Python - Visão Geral
Python - Visão GeralPython - Visão Geral
Python - Visão Geral
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Minicurso Python
Minicurso PythonMinicurso Python
Minicurso Python
 
Python - Introdução Básica
Python - Introdução BásicaPython - Introdução Básica
Python - Introdução Básica
 
python_para_desenvolvedores.pdf
python_para_desenvolvedores.pdfpython_para_desenvolvedores.pdf
python_para_desenvolvedores.pdf
 
Linguagem de Programação Python
Linguagem de Programação PythonLinguagem de Programação Python
Linguagem de Programação 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
 
Tradutor de Pig Latin
Tradutor de Pig LatinTradutor de Pig Latin
Tradutor de Pig Latin
 
Py dojo
Py dojoPy dojo
Py dojo
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Cebraspe 2016: .NET Core e ASP.NET Core
Cebraspe 2016: .NET Core e ASP.NET CoreCebraspe 2016: .NET Core e ASP.NET Core
Cebraspe 2016: .NET Core e ASP.NET Core
 
PyDojo
PyDojoPyDojo
PyDojo
 
Automacao com Python.pdf
Automacao com Python.pdfAutomacao com Python.pdf
Automacao com Python.pdf
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
dotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET CoredotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
 
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF CoreExplorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
 
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
 

Seminário de Python - LP 1/2015 - Grupo 2