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 python

10,071 views

Published on

Slides sobre Python, incluindo biblioteca padrão, pacotes e frameworks úteis para todo tipo de projeto.

  • Be the first to comment

Canivete python

  1. 1. Canivete suíço Python para projetos da faculdade Anderson Berg @berg_pe
  2. 2. ApresentandoAnderson Berg● Engenheiro da Computação (Poli-UPE)● Mestrando em Ciência da Computação (Cin-UFPE) na área de clustering e computação inteligente● Membro do Grupo de Usuários Python de Pernambuco (PUG-PE)● Usuário de Linux● Programador Python (além de C/C++, Java, C#...)● Twitter: @berg_pe● Blog: www.pythonize.org
  3. 3. Relax
  4. 4. Vamos trabalhar
  5. 5. Tem tudo pra dar errado
  6. 6. É fácil programar em Python?
  7. 7. Hello Worldprint “Hello World!”
  8. 8. Muito Fácil!
  9. 9. Quem usa Python pelo mundo?
  10. 10. E no Brasil?
  11. 11. De onde veio Python? ● Criado em 1989 pelo holandês Guido van Rossum ● O nome vem de um seriado chamado Monty Python
  12. 12. Onde é que tem Python? Aplicativos Desktophttp://www.stoq.com.br/ http://taskcoach.org/
  13. 13. Onde é que tem Python? Aplicativos MobilePython for Symbian (PyS60) ASE (Android) Python for Maemo (PySide)
  14. 14. Pygame
  15. 15. Python é poderoso
  16. 16. Python é poderoso● Tipagem dinâmica● Biblioteca padrão● Multi-paradigma● Multi-plataforma● Free software (GPL)
  17. 17. Tipagem dinâmica
  18. 18. Baterias incluídas● Extensa biblioteca padrão ● Interface gráfica (Tkinter) ● HTML (urllib) ● Banco de dados (sqLite) ● ...
  19. 19. Multiparadigma● Orientada a objetos e funcional● Interpretada e compilada
  20. 20. Tem emprego?
  21. 21. No Brasil...http://www.python.org.br/wiki/OportunidadesDeEmprego
  22. 22. No Brasil...
  23. 23. E no mundohttp://www.python.org/community/jobs/
  24. 24. Vou começar agora!
  25. 25. Instalação do Python● Interpretador Python disponível em diversas plataformas. ● Windows, Linux, Mac... ● Para usuários Windows é necessário o download do SDK – http://www.python.org/download
  26. 26. Instalação do Python● Adicione o caminho da instalação no PATH do sistema! ● ;C:Python2x● No Linux e Mac, Python já vem instalado! ● $ python ● >>> 2 * 3 ● 6
  27. 27. Ambiente IDLE● Ambiente Shell de desenvolvimento básico● Editor de texto com highlighting e identação automática para criação de arquivos python● Comandos para alterar propriedades e execução de programas
  28. 28. IDEsTem IDE pra Python?
  29. 29. IDEsPyDev NetBeans >= 6.5 PyCharm
  30. 30. Shell incrementado● IPython (Linux, Mac, Windows) ● http://ipython.scipy.org/● Bpython (Linux e Mac OS) ● http://bpython-interpreter.org/● Incrementam o Shell do interpretador Python com auto-complete, highlighting...
  31. 31. Banco de Dados com SQLite● Biblioteca em C● Já vem com Python● Sintaxe SQL● Dados ficam guardados em um único arquivo● http://docs.python.org/library/sqlite3.html
  32. 32. Criando um banco de dados
  33. 33. Inserindo dados
  34. 34. Recuperando dados
  35. 35. GUI com TKInter● TK Interface, já vem com Python● Diversas widgets● Linux, Windows e Mac● http://wiki.python.org/moin/TkInter● http://docs.python.org/library/tkinter.html
  36. 36. GUI com TKInter
  37. 37. Arquivos
  38. 38. Django“Django é um framework web de alto nívelescrito em Python que estimula odesenvolvimento rápido e limpo”
  39. 39. Iniciando um projeto$ django-admin.py startproject meu_projetomyproject/ __init__.py manage.py settings.py urls.py
  40. 40. Iniciando um projeto$ python manage.py runserverValidating models...0 errors found.Django version 0.96-pre, using settingsmyproject.settingsDevelopment server is running athttp://127.0.0.1:8000/Quit the server with CONTROL-C.
  41. 41. Configurando banco
  42. 42. Configurando banco$ python manage.py syncdb
  43. 43. NumPy● Suporta operações com vetores e matrizes● Baseado em C
  44. 44. NumPy
  45. 45. NumPy● Outras operações>>> np.mean(a[0,:]) #media>>> np.std(a[:,1]) #desvio-padrao>>> np.min(a) #minimo>>> np.max(a) #maximo>>> b = a.T #transposta
  46. 46. PyLab>>>ipython --pylab>>>x = linspace(0, 2*pi, 50)>>>plot(x, sin(x))

×