Python
Introdução• Python é uma linguagem de  programação fácil de aprender e  poderosa;• É orientada a objetos;• Possui uma vast...
Introdução• Um dos princípios de Python é que  seus programas sejam fáceis de ler, ou  seja, nada de chaves, ponto-e-vírgu...
Quem usa Python ?• Google - Aplicações Web;• Yahoo - Aplicações Web;• Microsoft - IronPython (Python  para .NET);• Nokia -...
Versões de Python• Versão oficial, mantida pela PSF  (Python Software Foundation): • http://www.python.org• Python para .NE...
Instalando Python• Os sistemas operacionais Linux e  MacOS já vêm com um interpretador de  Python instalado;• No Windows é...
http://www.python.org      Clicar em “download”
Selecionando a versão         “Python 2.6.5 Windows installer”
Editores• Editor de texto simples;• Interpretador interativo;• Idle;• Eclipse + PyDev.
Editores de Texto Simples  • Bloco de notas;  • Notepad++;  • Emacs;  • TextMate;
Interpretador Interativo
Idle
PyDev• O PyDev é um ambiente de  desenvolvimento integrado para Python  feito sobre a plataforma Eclipse;• Alguns dos recu...
http://pydev.org
Como instalar• Existem duas formas: • Instalação pelo mecanismo de   atualização do Eclipse (instalação   rápida); • Baixa...
Instalação rápida    Abrir o Eclipse
Instalando novo software    2           Digitar o endereço:            http://pydev.org/updates1                          ...
Adicionando um site                       1      Clicar em “OK”
Escolhendo o pacoteSelecionar “PyDev”  1                     Clicar em “Next”                       2
Vendo o resumo      Clicar em “Next”        1
I accept the terms ...Selecionar “I accept ...”1                           Clicar em “Finish”                             ...
Reiniciar o Eclipse ?             Clique em “Yes”                        1
OU
Baixando o pacote        1   Entrar no site http://pydev.org2Clicar em “Download”
Escolhendo o pacoteClicar em “SourceForge download”1
Fazendo o download1Clicar em “Download Now!”
Descompactando ...                    1             Descompacte o arquivo               na pasta “dropins”
Inicie o Eclipse
Criando  umProjeto
Arquivo / Novo Projeto ...
PyDev ProjectSelecione PyDev          1                      Clique em “Next”                     2
Configurando um InterpretadorClique em “Please configure an interpreter ...”          1
Novo interpretador                              1     Clique em “Auto Config”
Auto Config                     1    Clique em “OK”
Auto Config             Clique em “OK”                   1
Autoconfig não funcionou • Se o autoconfig não funcionar você vai:  • Clicar no botão “New”;  • Seleciona o arquivo python.e...
Novo Projeto       Digite o nome do projeto: “Aula1”1                             Clique em “Finish”                       2
Mudar Perspectiva ?               Clique em “Yes”                     1
Criando um módulo• Clique na seta ( ) localizada no lado  esquerdo do projeto para exibir o seu  conteúdo;• Na pasta “    ...
Novo módulo       Digite o nome do módulo: “aula1”1                           Clique em “Finish”                    2
Módulo aula1• Parabéns, o seu primeiro módulo em  Python !
Hello World• Para variar, vamos fazer um “Hello World”• Digite no seu módulo a linha: • print Hello World !• Com o botão d...
Alguns conceitos ...
Variáveis• Variáveis armazenam valores;• Declarando variáveis: • nome = valor • nome1, nome2 = valor1, valor2• Variáveis p...
Linguagens podem ser:• Estaticamente tipadas:  • Os tipos são fixados em tempo de compilação;• Dinamicamente tipadas:  • Os...
Python é:• Ao mesmo tempo: • Dinamicamente tipada:   • As variáveis são declaradas sem um     tipo;   • O seu tipo é estab...
Por exemplo:#Exemplo erradovalor = ‘123’valor += 4TypeError: cannot concatenate str and int objects#Exemplo corretovalor =...
Exibindo valores na tela • print valor • Ou • print valor1, valor2, ..., valorN • É só isso mesmo :)
Exemplo• Usando Python como calculadora: • print (2 + 2) * 4 / 8• Você pode usar o console interativo  para fazer os seus ...
Lendo Valores do Teclado • valor = raw_input( ) • nome = raw_input(“Digite seu nome: “)
Exemplo• Brinque um pouco com os conceitos  aprendidos até agora:  nome = raw_input(Digite o seu nome:)  print Bom dia, no...
• ATENÇÃO !!! • Normalmente os interpretadores Python apenas   aceitam que o código seja composto apenas por   caracteres ...
Strings• Dividindo:  • nome = “Bruno Gama Catao”  • nome.split( )• Tamanho:  • len(nome) #Retorna 16• Caracteres:  • nome[...
Atenção !Os índices em Python iniciam em 0 (zero)
Strings• Convertendo para maiúsculas:  • nome.upper( )• Convertendo para minúsculas:  • nome.lower( )• Primeiras letras ma...
Strings• Strings podem ser definidos com aspas simples  (‘) ou aspas duplas (“);• Também é possível definir Strings de múlti...
Dicas• Para descobrir quais são as funções/  métodos de um objeto digite: • dir (objeto) - exemplo: dir (lista)• Para obte...
Listas• Declarando: • lista = [ ] • lista = [‘banana’, ‘pera’, ‘tomate’]• Adicionando: • lista.append(‘jaboticaba’) • list...
Listas• Removendo: • lista.remove(“banana”) • lista.pop( ) • lista.pop(2)• Testando: • “pitanga” in lista
Listas• Modificando: • lista[2] = ‘pitanga’• Sub-listas: • lista[0:2] # retorna: [‘banana’, ‘pitanga’] • lista[:2] • lista[...
Listas• Ordenando: • lista.sort( )• Revertendo: • lista.reverse( )• Tamanho: • len(lista)
Função range• Retorna uma lista, contendo os valores de um  intervalo;• Ex: • range(10) - retorna os números de 0 a 9; • r...
Desvios Condicionais• if condicao: • código se a condição for verdadeira• else: • código se a condição for falsa
Desvios Condicionais• if condicao1:  • código caso a condição 1 for verdadeira• elif condicao2:  • código caso a condição ...
Indentação de Código• Atenção !!! • A primeira linha de um bloco define a   indentação das linhas restantes; • Portanto, a ...
Exemplo                  Testem executar com e sem esta linha !# -*- coding: latin-1 -*-nome = raw_input(Digite o seu nome...
Laços• for - percorre os elementos de uma lista/  tupla;• Exemplo: • pessoas = [‘joao’, ‘maria’, ‘ana’, ‘pedro’] • for pes...
Função enumerate• enumerate(lista) - retorna uma lista de  tuplas (indice, valor) para cada um dos  elementos da lista;• E...
Desafio• Faça um programa que leia nomes do teclado até que seja  digitada a palavra ‘sair’;• Os nomes deverão ser armazena...
Formatando Strings• x = 10• y = 20• texto = “posição: %d, %d” % (x, y)• Modificadores: • %d - dígitos inteiros; • %s - stri...
Formatando Strings• Exemplo: • pi = 3.1415926 • print “pi = %.2f” % pi
Leitura de Arquivos• arquivo = open(‘arquivo’)• linhas = arquivo.readlines( )• print linhas• arquivo.close( )
Escrita de Arquivos• arquivo = open(‘arquivo’, ‘w’)• arquivo.write(valor)• arquivo.close( )
Função open• A função open possui dois parâmetros;• O primeiro é o nome do arquivo a ser  aberto;• O segundo é o modo: • r...
Desafio• Faça um programa que leia nomes do  teclado até que seja digitada a palavra  ‘sair’;• Os nomes deverão ser armazen...
Biblioteca de módulos• Python vem com vários módulos cheios  de funções prontas para serem usadas;• Para usar um destes mó...
Módulos• Módulos são compostos por classes e  funções;• É possível importar apenas uma classe ou  função específica de um m...
Alguns módulos• os - Funções do sistema operacional;• datetime - Funções de data e hora;• math - Funções matemáticas;• ran...
Exibindo a data atual import datetime #Mostrando a data atual print datetime.date.today()
Exibindo a data atual 2  from datetime import date  #Mostrando a data atual  print date.today()
Listando arquivosimport osfor arquivo in os.listdir(C:):    print arquivo
Enviando E-mailsimport smtplibserver       =   smtp.mail.yahoo.com.bruser         =   usuariopasswd       =   senhasender ...
Upcoming SlideShare
Loading in …5
×

Python 01

1,669 views

Published on

Introdução à linguagem de programação Python

Published in: Technology
1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total views
1,669
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
91
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Python 01

    1. 1. Python
    2. 2. Introdução• Python é uma linguagem de programação fácil de aprender e poderosa;• É orientada a objetos;• Possui uma vasta biblioteca de classes e funções prontas;• Python já vem com as pilhas !
    3. 3. Introdução• Um dos princípios de Python é que seus programas sejam fáceis de ler, ou seja, nada de chaves, ponto-e-vírgula, begin, end, etc.• Além da sua vasta biblioteca, a linguagem Python pode ser estendida através novas funções escritas em Python, C, C++, Java, C#, etc.
    4. 4. Quem usa Python ?• Google - Aplicações Web;• Yahoo - Aplicações Web;• Microsoft - IronPython (Python para .NET);• Nokia - Python S60 (Python para celulares);• Disney - Usa para fazer animações 3D.
    5. 5. Versões de Python• Versão oficial, mantida pela PSF (Python Software Foundation): • http://www.python.org• Python para .NET: IronPython;• Python para Java: Jython;• Python em Python (?!): PyPy.
    6. 6. Instalando Python• Os sistemas operacionais Linux e MacOS já vêm com um interpretador de Python instalado;• No Windows é necessário instalar;• Existem vários interpretadores de Python disponíveis, o oficial é grátis e está disponível no endereço: • http://www.python.org
    7. 7. http://www.python.org Clicar em “download”
    8. 8. Selecionando a versão “Python 2.6.5 Windows installer”
    9. 9. Editores• Editor de texto simples;• Interpretador interativo;• Idle;• Eclipse + PyDev.
    10. 10. Editores de Texto Simples • Bloco de notas; • Notepad++; • Emacs; • TextMate;
    11. 11. Interpretador Interativo
    12. 12. Idle
    13. 13. PyDev• O PyDev é um ambiente de desenvolvimento integrado para Python feito sobre a plataforma Eclipse;• Alguns dos recursos do PyDev são: • Completar automaticamente; • Colorir o código; • Depurador; • etc.
    14. 14. http://pydev.org
    15. 15. Como instalar• Existem duas formas: • Instalação pelo mecanismo de atualização do Eclipse (instalação rápida); • Baixar o pacote completo e descompactar na pasta “dropins” do Eclipse.
    16. 16. Instalação rápida Abrir o Eclipse
    17. 17. Instalando novo software 2 Digitar o endereço: http://pydev.org/updates1 3 Clicar em “Add...”
    18. 18. Adicionando um site 1 Clicar em “OK”
    19. 19. Escolhendo o pacoteSelecionar “PyDev” 1 Clicar em “Next” 2
    20. 20. Vendo o resumo Clicar em “Next” 1
    21. 21. I accept the terms ...Selecionar “I accept ...”1 Clicar em “Finish” 2
    22. 22. Reiniciar o Eclipse ? Clique em “Yes” 1
    23. 23. OU
    24. 24. Baixando o pacote 1 Entrar no site http://pydev.org2Clicar em “Download”
    25. 25. Escolhendo o pacoteClicar em “SourceForge download”1
    26. 26. Fazendo o download1Clicar em “Download Now!”
    27. 27. Descompactando ... 1 Descompacte o arquivo na pasta “dropins”
    28. 28. Inicie o Eclipse
    29. 29. Criando umProjeto
    30. 30. Arquivo / Novo Projeto ...
    31. 31. PyDev ProjectSelecione PyDev 1 Clique em “Next” 2
    32. 32. Configurando um InterpretadorClique em “Please configure an interpreter ...” 1
    33. 33. Novo interpretador 1 Clique em “Auto Config”
    34. 34. Auto Config 1 Clique em “OK”
    35. 35. Auto Config Clique em “OK” 1
    36. 36. Autoconfig não funcionou • Se o autoconfig não funcionar você vai: • Clicar no botão “New”; • Seleciona o arquivo python.exe instalado no seu computador (normalmente este arquivo fica na pasta C:Python26python.exe); • Clicar no botão “Ok”.
    37. 37. Novo Projeto Digite o nome do projeto: “Aula1”1 Clique em “Finish” 2
    38. 38. Mudar Perspectiva ? Clique em “Yes” 1
    39. 39. Criando um módulo• Clique na seta ( ) localizada no lado esquerdo do projeto para exibir o seu conteúdo;• Na pasta “ ” (onde estarão armazenados os artefator Python) clique com o botão direito do mouse;• Selecione a opção “New -> PyDev Module” ( )
    40. 40. Novo módulo Digite o nome do módulo: “aula1”1 Clique em “Finish” 2
    41. 41. Módulo aula1• Parabéns, o seu primeiro módulo em Python !
    42. 42. Hello World• Para variar, vamos fazer um “Hello World”• Digite no seu módulo a linha: • print Hello World !• Com o botão direito do mouse, clique sobre o seu módulo e selecione a opção “Run As - > Python Run”;• No console você verá: • Hello World !
    43. 43. Alguns conceitos ...
    44. 44. Variáveis• Variáveis armazenam valores;• Declarando variáveis: • nome = valor • nome1, nome2 = valor1, valor2• Variáveis podem ser declaradas em qualquer ponto do código;• Variáveis precisam ser declaradas/ inicializadas antes de serem utilizadas.
    45. 45. Linguagens podem ser:• Estaticamente tipadas: • Os tipos são fixados em tempo de compilação;• Dinamicamente tipadas: • Os tipos são descobertos em tempo de execução;• Fortemente tipadas: • Os tipos são assegurados;• Fracamente tipadas: • Os tipos não importam muito.
    46. 46. Python é:• Ao mesmo tempo: • Dinamicamente tipada: • As variáveis são declaradas sem um tipo; • O seu tipo é estabelecido na inicialização; • Fortemente tipada: • Após a inicialização, o tipo da variável importa.
    47. 47. Por exemplo:#Exemplo erradovalor = ‘123’valor += 4TypeError: cannot concatenate str and int objects#Exemplo corretovalor = ‘123’valor += str(4)
    48. 48. Exibindo valores na tela • print valor • Ou • print valor1, valor2, ..., valorN • É só isso mesmo :)
    49. 49. Exemplo• Usando Python como calculadora: • print (2 + 2) * 4 / 8• Você pode usar o console interativo para fazer os seus testes:
    50. 50. Lendo Valores do Teclado • valor = raw_input( ) • nome = raw_input(“Digite seu nome: “)
    51. 51. Exemplo• Brinque um pouco com os conceitos aprendidos até agora: nome = raw_input(Digite o seu nome:) print Bom dia, nome, como vai ?
    52. 52. • ATENÇÃO !!! • Normalmente os interpretadores Python apenas aceitam que o código seja composto apenas por caracteres ASCII (ou seja, nada de acentos) ! • Porém, é possível mudar a codificação do texto aceita; • No início de um módulo, basta colocar a linha: Diretiva de pré-processador • # -*- coding: latin-1 -*- • Onde latin-1 é a codificação do Português do Brasil.
    53. 53. Strings• Dividindo: • nome = “Bruno Gama Catao” • nome.split( )• Tamanho: • len(nome) #Retorna 16• Caracteres: • nome[3] #Retorna ‘n’• Substrings: • nome[2:7] #Retorna ‘uno G’
    54. 54. Atenção !Os índices em Python iniciam em 0 (zero)
    55. 55. Strings• Convertendo para maiúsculas: • nome.upper( )• Convertendo para minúsculas: • nome.lower( )• Primeiras letras maiúsculas: • nome.title( )• Encontrar ocorrência: • nome.find(‘Ga’) #Retorna 6
    56. 56. Strings• Strings podem ser definidos com aspas simples (‘) ou aspas duplas (“);• Também é possível definir Strings de múltiplas linhas usando aspas triplas (‘’’) ou (“””);• Ex: nomes = ‘’‘Joao Maria Jose’’’
    57. 57. Dicas• Para descobrir quais são as funções/ métodos de um objeto digite: • dir (objeto) - exemplo: dir (lista)• Para obter maiores informações sobre funções/métodos/objetos digite: • help (função) - exemplo: dir (str) Façam o teste !
    58. 58. Listas• Declarando: • lista = [ ] • lista = [‘banana’, ‘pera’, ‘tomate’]• Adicionando: • lista.append(‘jaboticaba’) • lista + [‘jaboticaba’]• Acessando: • lista[2] # retorna ‘pera’
    59. 59. Listas• Removendo: • lista.remove(“banana”) • lista.pop( ) • lista.pop(2)• Testando: • “pitanga” in lista
    60. 60. Listas• Modificando: • lista[2] = ‘pitanga’• Sub-listas: • lista[0:2] # retorna: [‘banana’, ‘pitanga’] • lista[:2] • lista[1:]
    61. 61. Listas• Ordenando: • lista.sort( )• Revertendo: • lista.reverse( )• Tamanho: • len(lista)
    62. 62. Função range• Retorna uma lista, contendo os valores de um intervalo;• Ex: • range(10) - retorna os números de 0 a 9; • range(2, 100) - retorna os números de 2 a 99; • range(10, 0, -1) - retorna os números de 10 a 0 com incremento de -1.
    63. 63. Desvios Condicionais• if condicao: • código se a condição for verdadeira• else: • código se a condição for falsa
    64. 64. Desvios Condicionais• if condicao1: • código caso a condição 1 for verdadeira• elif condicao2: • código caso a condição 2 for verdadeira• elif condicao3: • código caso a condição 3 for verdadeira• else: • código caso nenhuma das condições for verdadeira
    65. 65. Indentação de Código• Atenção !!! • A primeira linha de um bloco define a indentação das linhas restantes; • Portanto, a quantidade de espaços/ tabs devem ser mantidas; • Cuidado para não confundir espaços por tabs e vice-versa.
    66. 66. Exemplo Testem executar com e sem esta linha !# -*- coding: latin-1 -*-nome = raw_input(Digite o seu nome:)ano = int(raw_input(Em que ano você nasceu ?))idade = 2010 - anoif idade < 18: print nome, é menor de idadeelse: print nome, é maior de idade
    67. 67. Laços• for - percorre os elementos de uma lista/ tupla;• Exemplo: • pessoas = [‘joao’, ‘maria’, ‘ana’, ‘pedro’] • for pessoa in pessoas: • print pessoa
    68. 68. Função enumerate• enumerate(lista) - retorna uma lista de tuplas (indice, valor) para cada um dos elementos da lista;• Exemplo: • for indice, fruta in enumerate(frutas): • print indice, fruta
    69. 69. Desafio• Faça um programa que leia nomes do teclado até que seja digitada a palavra ‘sair’;• Os nomes deverão ser armazenados em uma lista;• O programa deverá exibir todos os nomes digitados, um por linha, no formato: • índice nome• Ex: • 1 josé • 2 maria • 3 pedro
    70. 70. Formatando Strings• x = 10• y = 20• texto = “posição: %d, %d” % (x, y)• Modificadores: • %d - dígitos inteiros; • %s - string; • %f - ponto flutuante.
    71. 71. Formatando Strings• Exemplo: • pi = 3.1415926 • print “pi = %.2f” % pi
    72. 72. Leitura de Arquivos• arquivo = open(‘arquivo’)• linhas = arquivo.readlines( )• print linhas• arquivo.close( )
    73. 73. Escrita de Arquivos• arquivo = open(‘arquivo’, ‘w’)• arquivo.write(valor)• arquivo.close( )
    74. 74. Função open• A função open possui dois parâmetros;• O primeiro é o nome do arquivo a ser aberto;• O segundo é o modo: • r - modo read (leitura) - modo padrão; • w - modo write (escrita); • a - modo append (adiciona conteúdo ao final do arquivo).
    75. 75. Desafio• Faça um programa que leia nomes do teclado até que seja digitada a palavra ‘sair’;• Os nomes deverão ser armazenados em um arquivo de texto.
    76. 76. Biblioteca de módulos• Python vem com vários módulos cheios de funções prontas para serem usadas;• Para usar um destes módulos é necessário antes importá-lo: • import nome_do_módulo• Exemplo: • import os
    77. 77. Módulos• Módulos são compostos por classes e funções;• É possível importar apenas uma classe ou função específica de um módulo, ao invés de importar o módulo todo: • from modulo import entidade• Ex: • from datetime import date
    78. 78. Alguns módulos• os - Funções do sistema operacional;• datetime - Funções de data e hora;• math - Funções matemáticas;• random - Geração de números aleatórios;• urllib2 - Acesso a internet;• smtplib - Envio de emails.
    79. 79. Exibindo a data atual import datetime #Mostrando a data atual print datetime.date.today()
    80. 80. Exibindo a data atual 2 from datetime import date #Mostrando a data atual print date.today()
    81. 81. Listando arquivosimport osfor arquivo in os.listdir(C:): print arquivo
    82. 82. Enviando E-mailsimport smtplibserver = smtp.mail.yahoo.com.bruser = usuariopasswd = senhasender = brunogamacatao@yahoo.com.brrecipients = [brunogamacatao@gmail.com]msg = Texto da mensagemsession = smtplib.SMTP(server)session.login(user, passwd)session.sendmail(sender, recipients, msg)

    ×