Minicurso: Python e suas baterias incluídas

1,179 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,179
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
45
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Minicurso: Python e suas baterias incluídas

  1. 1. Python e suas baterias incluídas Universidade Estadual ParaíbaII Encontro de Licenciatura em Computação | II ELIC Apresentação Luiz Augusto de Macêdo Morais luizaugustomm@gmail.com
  2. 2. Requisitos ● Eu vou assumir que... ● Todos já pagaram pelo menos P1; ● Gostam de programar; ● Sabem conceitos básicos de estruturas de dados; ● Sabem o que é uma função; ● Eu não vou assumir que vocês saibam Python!Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [2/51]
  3. 3. Público-alvo ● Devem participar deste minicurso... ● Programadores que querem conhecer o potencial da linguagem Python; ● Gente que quer se divertir programando; ● Pessoas que querem produzir alguma coisa de “futuro” ● Quem não deve participar... ● Quem gostar de gets, sets, interfaces e public static void main()s da vida!Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [3/51]
  4. 4. Quem sou eu? ● Estudante do 7º período de Licenciatura em Computação da UEPB; ● Conhece Python há três anos; ● Adora Inteligência Artificial; ● Gosta de programar bebendo com os amigos; ● Odeia Java!Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [4/51]
  5. 5. Roteiro 1 2 Conhecendo o Python A linguagem O que é Python? Regras básicas de sintaxe História da linguagem Usando o interpretador interativo Pra que serve o Python? Ifs, elifs e elses da vida Quem usa Python? For e while pra repetir Instalação e versões Strings e listas Comparando os códigos Funções “Olá mundo” diferente Como executar?Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [5/51]
  6. 6. Conhecendoo Python
  7. 7. O que é Python? ● Interpretada; ● Interativa; ● Multi paradigma; ● Tipagem dinâmica; ● Fortemente tipada;Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [7/51]
  8. 8. História ● Criada em 1989 por Guido van Rossum; ● Influenciada pela linguagem ABC; ● Inspirada no programa britânico Monty Pythons Flying Circus; ● Nasceu para ser fácil (Projeto Amoeba);Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [8/51]
  9. 9. Pra que serve o Python? Aplicativos para desktopPython e suas baterias incluídas [9/51]II ELIC | Encontro de Licenciatura em Computação
  10. 10. Pra que serve o Python? Aplicativos para webPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [10/51]
  11. 11. Pra que serve o Python? JogosPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [11/51]
  12. 12. Pra que serve o Python? Aplicativos móveisPython e suas baterias incluídas [12/51]II ELIC | Encontro de Licenciatura em Computação
  13. 13. Pra que serve o Python? RobôsPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [13/51]
  14. 14. Pra que serve o Python? Computação científicaPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [14/51]
  15. 15. Pra que serve o Python? EducaçãoPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [15/51]
  16. 16. Quem usa Python no BrasilPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [16/51]
  17. 17. Quem usa Python no MundoPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [17/51]
  18. 18. Instalando Python no Linux ● A maioria das distribuições vem com ele instalado ● No Ubuntu: sudo apt-get install python ● Se não conseguir, vá no site oficial: http://www.python.org/download/Python e suas baterias incluídas [18/51]II ELIC | Encontro de Licenciatura em Computação
  19. 19. Instalando Python no Windows ● O python não vem instalado por padrão ● Acesse site oficial: http://www.python.org/download/ ● Baixe a versão 2.x mais recente para ter uma maior compatibilidade; ● Ou baixe a versão 3.x se quiser as funcionalidades mais recentes;Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [19/51]
  20. 20. Comparando os códigos... public class Main { int main() { public static void main(String printf(“Olá, args[]) { mundo!n”); System.out.print(“Olá, } mundo!”); } IDENTIFICATION DIVISION. } PROGRAM-ID. HELLO-WORLD. ENVIRONMENT DIVISION. program main; begin DATA DIVISION. write(Olá, mundo!); end. PROCEDURE DIVISION. DISPLAY "Olá, Mundo!". STOP RUN.Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [20/51]
  21. 21. Comparando os códigos... print(Olá, mundo!)Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [21/51]
  22. 22. Olá mundo diferente... from datetime import datetime from time import sleep while True: hora = datetime.now() print hora.strftime(%H:%M:%S) sleep(1)Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [22/51]
  23. 23. Como executar (modo interativo) $ python3 >>> from datetime import datetime >>> from time import sleep >>> while True: ... hora = datetime.now() ... print hora.strftime(%H:%M:%S) ... sleep(1) ...Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [23/51]
  24. 24. Como executar (script/código-fonte) from datetime import datetime from time import sleep while True: hora = datetime.now() print(hora.strftime(%H:%M:%S)) sleep(1)Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [24/51]
  25. 25. Como executar (script/código-fonte) $ python3 relogio.py relogio.pyPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [25/51]
  26. 26. A linguagem
  27. 27. Regras básicas de sintaxe Sem ponto e vírgula no final dos comandos! ;Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [27/51]
  28. 28. Regras básicas de sintaxe Sem delimitadores de código! begin { } endPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [28/51]
  29. 29. Regras básicas de sintaxe A endentação/indentação é obrigatória!Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [29/51]
  30. 30. Usando o Interpretador Interativo [1/7] Fazendo cálculos >>> 34 + 2 36 >>> 4 – 5.5 -1.5 >>> 3 * 11 33 >>> 5 / 2 2.5 >>> 5 // 2 2 >>> 4 % 2 0Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [30/51]
  31. 31. Usando o Interpretador Interativo [2/7] Tipos de dados >>> type(36) <class int> >>> type(55.2) <class float> >>> type(2 == 3) <class bool> >>> type(a) <class str> >>> type(ELIC) <class str>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [31/51]
  32. 32. Usando o Interpretador Interativo [3/7] Manipulando variáveis >>> numero = 2 >>> soma = numero + 3 >>> soma /= 2 >>> soma 2.5 >>> palavra = elic >>> palavra elic >>> numero / 0 Traceback (most recent call last): File "<stdin>", line 1, in <module> ZeroDivisionError: division by zeroPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [32/51]
  33. 33. Usando o Interpretador Interativo [4/7] Manipulando variáveis >>> nome Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name nome is not defined >>> nome = Luiz Augusto >>> nome Luiz AugustoPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [33/51]
  34. 34. Usando o Interpretador Interativo [5/7] Comando de saída >>> frase = Olá mundo! >>> print(frase) Olá mundo! >>> print(1 – 3) -2 >>> print(elic) elic >>> print() >>>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [34/51]
  35. 35. Usando o Interpretador Interativo [6/7] Comando de entrada >>> nome = input(Insira seu nome: ) Insira seu nome: Luiz Augusto >>> print(Meu nome é %s % nome) Meu nome é Luiz Augusto >>> idade = input(Idade: ) Idade: 18 >>> idade + 2 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: Cant convert int object to str implicitlyPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [35/51]
  36. 36. Usando o Interpretador Interativo [7/7] Convertendo tipos >>> idade = input(Idade: ) Idade: 18 >>> idade 18 >>> type(idade) <class str> >>> idade = int(idade) >>> type(idade) <class int> >>> idade + 2 20Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [36/51]
  37. 37. Desafio Mensagens secretasVocê terá que criar um programa em Python que criptografe suamensagem e depois envie a mensagem criptografada para seu amigopor e-mail.Ao receber a mensagem, seu amigo terá que descriptografá-la e lê-la. Acesse os códigos na minha página de apresentações.
  38. 38. Ifs, elifs e elses da vida [1/4] Sintaxe if <condição>: →<bloco do if> <condição> = expressão lógica Use endentação!Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [38/51]
  39. 39. Ifs, elifs e elses da vida [2/4] Sintaxe if <condição>: →<bloco do if> else: →<bloco do else>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [39/51]
  40. 40. Ifs, elifs e elses da vida [3/4] Sintaxe if <condição>: →<bloco do if> elif <condição>: →<bloco do elif> else: →<bloco do else>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [40/51]
  41. 41. Ifs, elifs e elses da vida [4/4] >>> idade = input(Idade: ) Idade: 18 >>> tem_carteira = False >>> if idade < 18: ... print(Ainda não pode dirigir) ... elif idade < 90: ... if tem_carteira: ... print(Ok, pode dirigir) ... else: ... print(Ôps, sem carteira não pode!) ... else: ... print(Está muito velho pra dirigir) ... Ôps, sem carteira não pode!Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [41/51]
  42. 42. For e while para repetir [1/3] Sintaxe for <elemento> in <iterável>: →<bloco do for>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [42/51]
  43. 43. For e while para repetir [2/3] Sintaxe while <condição>: →<bloco do while>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [43/51]
  44. 44. For e while para repetir [3/3] >>> for i in range(3, 0, -1): ... print(i) ... 3 2 1 >>> c = 3 >>> while c: ... print(c) ... c -= 1 ...Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [44/51]
  45. 45. Strings e listas [1/4] >>> nome = Luiz Augusto >>> nome[0] L >>> nome[-1] o >>> nome[0:4] Luiz >>> novo_nome = nome.replace(Augusto, Gustavo) >>> print(novo_nome, nome) Luiz Gustavo Luiz AugustoPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [45/51]
  46. 46. Strings e listas [2/4] >>> for letra in nome[0:4]: ... print(letra) ... L u i zPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [46/51]
  47. 47. Strings e listas [3/4] >>> frutas = [Pera, Uva, Maçã] >>> nova_fruta = Laranja >>> frutas.append(nova_fruta) >>> frutas.insert(1, Mamão) >>> frutas.remove(Pera) >>> frutas.pop() laranja >>> print(frutas) [Mamão, Uva, Maçã]Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [47/51]
  48. 48. Strings e listas [4/4] >>> for fruta in frutas: ... print(fruta) ... Mamão Uva MaçãPython e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [48/51]
  49. 49. Funções Sintaxe def <nome-da-função>(<parametros>): →<bloco da função>Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [49/51]
  50. 50. Funções >>> def fatorial(numero): ... fat = 1 ... while numero > 0: ... fat *= numero ... numero -= 1 ... return fat ... >>> fatorial(3) 6 >>> fatorial(4) 24Python e suas baterias incluídasII ELIC | Encontro de Licenciatura em Computação [50/51]
  51. 51. Obrigado!

×