Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Canivete suíço do Python

3,806 views

Published on

Slides da Palestra "Canivete suíço do Python" no FISL12.

Published in: Technology, Education

Canivete suíço do Python

  1. 1. O Canivete Suíço do Python Douglas Soares de Andrade
  2. 2. O Canivete Suíço do Python Conteúdo da Apresentação ● Introdução ● Sobre a palestra ● O que é Python ? ● Quem usa ? ● Convenções utilizadas na palestra ● Baterias inclusas
  3. 3. O Canivete Suíço do Python Introdução (Douglas) ● Desenvolvedor na Dataprev ● Python ● Zope e Plone ● PHP (wordpress, drupal) ● Participante de vários projetos de SL ● Archlinux (Desenvolvedor, TU, Mantenedor de pacotes) ● Web2py ● Plone Collective ● Py (ops, pai) de três lindas crianças =)
  4. 4. O Canivete Suíço do Python E vocês ? ● Quem já ouviu falar em Python ? ● Alguém trabalha com desenvolvimento de sistemas ? ● Alguém trabalha com Python ? ● Alguém já viu algum código Python e pensou: (pra não dizer outra coisa) “Será que dá pra fazer isso melhor ?!”
  5. 5. O Canivete Suíço do Python Sobre a palestra ● Não é um mão-na-massa de Python ● Não é uma batalha de pythonismos ● Exemplos simples, concisos e didáticos ● Baterias inclusas ● Além de tudo, é uma palestra sobre...
  6. 6. O Canivete Suíço do Python “Não perguntar o que você pode fazer por Python, mas sim o que Python pode fazer por você.”
  7. 7. O Canivete Suíço do Python O que é Python ? ● Iniciada em 1990 por Guido Van Rossum no CWI para ser a linguagem de script do sistema operacional distribuído AMOEBA. ● Inspirada pela linguagem ABC, criada também no CWI, que era uma linguagem de programação para usuários avançados em computação mas que não eram programadores. ● Nome vem do grupo humorístico Monty Python, do qual Guido é fan
  8. 8. O Canivete Suíço do Python Muito prazer, meu nome é Python ● Pode ser usada interativamente ● Tipos de dados básicos poderosos ● Baterias Inclusas ● Software Livre ● Os blocos são controlados por indentação ● Tudo é objeto ● É simples e transparente ● Ajuda o programador ● Comunidade de programadores apaixonados
  9. 9. O Canivete Suíço do Python Convenções utilizadas >>> Interpretador de Python ... Bloco lógico $ Indica que o comando foi executado em um shell
  10. 10. O Canivete Suíço do Python Baterias Inclusas (E algumas dicas legais)
  11. 11. O Canivete Suíço do Python Básico - Strings Adicionar zeros a uma string numérica:
  12. 12. O Canivete Suíço do Python Básico - Strings Trocar caracteres de um texto:
  13. 13. O Canivete Suíço do Python Básico - Strings Trocar caracteres de um texto:
  14. 14. O Canivete Suíço do Python Básico - Strings BONUS POINTS !!! Trocar caracteres de um texto:
  15. 15. O Canivete Suíço do Python Básico - Strings Substituições de textos maiores:
  16. 16. O Canivete Suíço do Python Básico - Strings Substituições de textos maiores:
  17. 17. O Canivete Suíço do Python Básico - Números Validar se um valor é numérico:
  18. 18. O Canivete Suíço do Python Básico - Números Frações: Divisão: BONUS POINTS !
  19. 19. O Canivete Suíço do Python Básico - Sets Retornar os valores únicos de uma lista de elementos:
  20. 20. O Canivete Suíço do Python Collections - Counter Container que mantém um controle de quantas vezes um elemento equivalente foi adicionado
  21. 21. O Canivete Suíço do Python Collections - Namedtuple Facilita o acesso a elementos de uma tupla, permitindo a atribuição de um nome para os atributos
  22. 22. O Canivete Suíço do PythonCollectionsNamedtuple
  23. 23. O Canivete Suíço do Python Collections - ordereddict Dicionários que sabem a ordem em que seus elementos foram inseridos
  24. 24. O Canivete Suíço do Python Collections - ordereddict Dicionários que sabem a ordem em que seus elementos foram inseridos
  25. 25. O Canivete Suíço do Python Gerais Generator e Set expressions (dica de performance)
  26. 26. O Canivete Suíço do Python Gerais - Any Testar se ao menos um dos elementos satisfaz determinada condição
  27. 27. O Canivete Suíço do PythonGerais - textwrapAjuda a manter asanidade de stringscom aspas triplas
  28. 28. O Canivete Suíço do PythonGerais - textwrapAjuda a manter asanidade de stringscom aspas triplas
  29. 29. O Canivete Suíço do Python Gerais - cmd Processador de comandos simples
  30. 30. O Canivete Suíço do Python Gerais Servir arquivos de um diretório da máquina
  31. 31. O Canivete Suíço do Python Gerais Auto completar no terminal (sem ipython)
  32. 32. O Canivete Suíço do Python O que é interessante, mas fica pra próxima ● Aspectos funcionais de Python ● map ● filter ● reduce ● lambda ● Outros módulos que vocês devem checar ● Itertools (Ferramentas para trabalhar com iteráveis) ● Functools (Ferramentas para trabalhar com funções para adapta-las ou extende- las) ● Documentação do comando set (tem muita coisa bacana lá) ● Serialização: json e cPickle ● pprint: Imprimir estruturas de dados de modo elegante ● Módulos e programas fora da stdlib que são sensacionais ● ipython ● bpython ● see ● ...
  33. 33. O Canivete Suíço do Python
  34. 34. O Canivete Suíço do Python Contato: Douglas Soares de Andrade Email : dsandrade@gmail.com Twitter: @douglasandrade Github: @dsarch Muito Obrigado =)

×