Python é uma linguagem de programação completa, que contém a funcionalidade exigida por programadores para escrever todos os tipos de código, de fazer filmes até para a previsão do tempo. Python é uma linguagem relativamente moderna. É muito poderoso e contém uma biblioteca de funções capazes de muitas tarefas diversificadas. No entanto, nem tudo o que vai achar útil é incorporado Python.
Felizmente, há um grande número de pacotes adicionais que são escritos especificamente para computação científica. Estes pacotes são bibliotecas de comandos extras que acrescentam mais funcionalidades do que o Python possui por default.
O objetivo do Spyder é fornecer um ambiente que faz com que seja fácil de escrever, rodar e debugar códigos Python, além de instalar vários módulos científicos como: NumPy, Matplotlib e SciPy.
Sites:
http://www.numpy.org/
http://matplotlib.org/
http://www.scipy.org/
Spyder
Spyder (anteriormente conhecido como Pydee) é um ambiente de desenvolvimento interativo poderoso para a linguagem Python com edição avançada, teste interativo, depuração e recursos de introspecção.
O Spyder IDE também pode ser usado como uma biblioteca que fornece poderosos widgets relacionados do console para as suas aplicações baseadas em PyQt – por exemplo, pode ser usado para integrar um console de depuração diretamente no layout de sua interface gráfica.
Recursos:
- Editor : Breakpoints, os pontos de interrupção e pontos de interrupção condicionais para usar com o depurador python (APO).
- Console : Executar um script todo ou qualquer parte dele a partir do Editor
- Explorador de variáveis : Ver as variáveis locais, enquanto você está depurando
- Inspetor de Objetos : Acesso rápido a documentação é uma obrigação para todos os programadores, seja para explorar novas bibliotecas ou se lembrar de como usar um pedaço de código
- Project Manager : Gerenciar grandes projetos de programação com diversas facilidades.
- Ajuda on-Line : Explorar documentação gerada dinamicamente de todos os módulos instalados
- Pylint : Analise seu código-fonte para prever erros e sinais de má qualidade de codificação.
- Preferencias – Configure Spyder como você deseja com uma grande variedade de preferências disponíveis.
Código Fonte: http://code.google.com/p/spyderlib/
MIT License: http://opensource.org/licenses/mit-license.php
Requisitos:
Sphinx é uma ferramenta que torna mais fácil criar documentação inteligente e bonita, escrita por Georg Brandl e licenciado sob a licença BSD.
Ela foi originalmente criada para a nova documentação do Python, e tem excelentes facilidades para a documentação dos projetos em Python.
site: http://sphinx-doc.org/
Instalação Linux
Entre no Terminal e digite os comando abaixo:
- sudo apt-get install python-qt4 python-sphinx
- sudo apt-get install spyder
Configuração da IDE
Vamos criar uma configuração para que o Spyder rode os aplicativos Python direto no terminal do Linux, você poderá interpretar scripts Python como na figura abaixo:
Instruções:
- No menu View, Windows and Toolbars escolha Project Explorer.
- No menu Tools, Preference escolha: RUN e selecione Execute in a external System Terminal.
- No menu File, escolha New Project e coloque o seguinte nome: HelloWorldSpyder.
- Clique no novo projeto com o botão direito e escolha New Module e nomeie :hello.py.
- Digite o codigo abaixo e na barra de tarefas clique em RUN.
Exemplo:
Neste exemplo criamos o famoso aplicativo Hello World e utilizamos a IDE Spyder para Linux, interpretando o script Python com saída para o Terminal:
#!/usr/bin/env python # -*- coding: latin-1 -*- # Desenvolvimento Aberto # hello.py # Importa OS import os # Limpa a tela os.system("clear") print "Hello World Spider" # Cria uma espera no terminal raw_input()
Spyder – Biblioteca Cientifica
#!/usr/bin/env python # -*- coding: latin-1 -*- # MatPlotLib Example # Ciência.py import numpy as np import matplotlib.pyplot as plt import matplotlib.animation as animation def data_gen(): t = data_gen.t cnt = 0 while cnt < 1000: cnt+=1 t += 0.05 yield t, np.sin(2*np.pi*t) * np.exp(-t/10.) data_gen.t = 0 fig, ax = plt.subplots() line, = ax.plot([], [], lw=2) ax.set_ylim(-1.1, 1.1) ax.set_xlim(0, 5) ax.grid() xdata, ydata = [], [] def run(data): # update the data t,y = data xdata.append(t) ydata.append(y) xmin, xmax = ax.get_xlim() if t >= xmax: ax.set_xlim(xmin, 2*xmax) ax.figure.canvas.draw() line.set_data(xdata, ydata) return line, ani = animation.FuncAnimation(fig, run, data_gen, blit=True, interval=10, repeat=False) plt.show()