4/08/2007

IronPython o Python para .NET

IronPython é um projeto da Microsoft (Quem disse que tudo que a Microsoft faz é ruim?) que é a implementação do Python para a plataforma .NET.

Com isso temos a integração do .NET Framework e sua bibliotecas, como o WindowsForms, com o Python.

Para ter o IronPython basta fazer o download dele aqui. E para que ele funcione direitinho é necessário o .NET Framework que pode ser baixado aqui.

Para acessar o console do IronPython basta executar o ipy.exe.

Programando algumas coisas no console poderá ver que os comando básicos do Python funcionam perfeitamente. Por exemplo:

>>> print 'ola IronPython'
ola IronPython
>>>range(3)
[0,1,2]
>>>def soma(a,b):
return a+b
>>>soma(1,2)
3

Agora usando uma biblioteca do .NET Framework

>>>import System
>>>System.Environment.OSVersion
Microsoft Windows NT 5.1.2600 Service Pack 2

E agora para finalizar este post sobre o básico do básico do IronPython, usando as bibliotecas padrão do Python no IronPython. Para isso, é só adicionar o caminho da pasta lib do Python no path. Se o seu Python for a versão 2.4, ficaria assim:

>>>import sys
>>>sys.path.append(r"c:\python24\lib")

E agora usando a biblioteca do Python no IronPython:

>>>import os
>>>os.getcwd()
'C:\\ironpython'

IronPyth9on funciona independente de ter Python instalado, mas daí não tem como utilizar a biblioteca padrão do Python no IronPython.

Só para finalizar...

Se você quer trabalhar com .NET, IronPython é uma grande alternativa para escolha de linguagem, já que as outras opções são C#, J#, VB.NET.

E com o projeto mono, sua aplicação usando IronPython fica portável tnato em ambientes Windows como Linux.

Para saber mais acesse o site do projeto: http://www.codeplex.com/IronPython

6 comentários:

Anônimo disse...

o IronPython funciona no mono tmb ? onde baixo o instalador ?

Walter Cruz disse...

Oi Andrews! Você viu a história do Iron Python? O cara começou a fazê-lo pra provar que .NET seria uma plataforma ruim para linguagens dinâmicas. Curioso não?

Andrews Medina disse...

Pois é Walter Cruz.

Eu pessoalmente acho que IronPython a melhor opção para .NET, e além disso uma ótima opção para quem quer programar Python para Windows.

Acho as bibliotecas dele melhor que as do Win32.

Andrews Medina disse...

Anônimo,

para linux você tem que baixar o codigo fonte.

Anônimo disse...

Só para deixar registrado:
C++ também é uma opção disponível no .NET ^^
Será que não valeria uma correção?
=))

Josafá Souza Jr. disse...

Walter, blz? estou usando python 2.5 e o IronPython 1.1.1, estou tentando usar as libs do python e não funfa, fiz como você disse. vi na net que vc pode colocar a mesma instrução no arquivo site.py nas libs do ironpython, fiz isso mas tb não funcionou, alguma sugestão?