[Py-Intro] Aula 01: Introdução

O que você vai aprender nesta aula?

  • Informações úteis sobre Python
  • Instalar o python
  • O que é o Jupyter Notebook, como instalá-lo e rodá-lo
  • Usar o ambiente virtual
  • Instalar bibliotecas com pip
  • Acessar páginas web usando Python
  • Estruturas de dados do Python
    • listas
    • dicionários

Python

  • Python é simples, enxuta e poderosa
  • Pilhas inclusas
  • Interpretada e dinâmica
  • Criada em 1991
    • Antes de Java, Ruby, PHP, Javascript, C#, HTML e CSS
  • Comunidade ativa e amigável

In [1]:
import this


The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

Aplicações do Python

Web

  • Django, Flask, Bottle, web2py, Pyramid, twisted, tornado

Programação científica

  • Numpy, Scipy, scikit-learn, Juyter Notebook, matplotlib

Desktop

  • PyQT, PyGTK, WxPython, kivy, tkinter

Cinema

  • Autodesk Maya, Blender, Nuke, ILM

Aplicações do Python

InfoSec (Information Security)

  • Scapy

Interet of Things

  • MicroPython

Educação

  • "Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities" (ACM, 2014)
  • "BBC begins to delivery 1 millions small programmable devices [...] called BBC micro:bit and [...] runs MicroPython." (PSF, 2014)

PyCon 2015

PyCon 2015

Instalando o Python 3.5

Debian e derivados (ubuntu, mint etc.)

$ sudo apt-get install python3.5

Windows e OS X

Instalando o Python 3.5

Windows

Não esqueça de marcar a opção "Add Python.exe to Path"

(imagem retirada do [Django Girls Tutorial](http://tutorial.djangogirls.org/pt/))

Virtualenv (Ambiente virtual)

Instalando o virtualenv

Linux e MacOS

$ python3 -m venv env

Windows

> C:\Python3.5\python -m venv env

Virtualenv (Ambiente virtual)

Ativando o virtualenv

Linux e MacOS

$ source env/bin/activate

Windows

> env\Scripts\activate  

Para sair de um ambiente virtual use o comando deactivate.

Instalando pacotes com o pip

  • O pip permite instalar pacotes Python do PyPI)
  • pip significa "pip install packages" (ou pip instala pacotes).

Como instalar

(funciona no Linux, Mac e Windows) (env) $ pip install requests

Jupyter Notebook

  • Aplicação web que permite a criação de documentos com:

    • Código ao vivo
    • Equações
    • Gráficos
    • Textos em Markdown ou Latex
  • É muito utilizado em:

    • Transformação de dados
    • Modelagem estatística
    • Simulação numérica
    • Aprendizado de máquina
    • Ensino

Jupyter Notebook

Instalando

(env) $ pip install jupyter[notebook]

Executando

  • Baixe o arquivo [Py-Intro] Aula 01 - Instalando... em sua máquina na mesma pasta que se encontra o env/
  • Rode o comando a seguir nessa mesma pasta (env) $ jupyter notebook Após um tempo será aberto o navegador com o índice de notebooks