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:

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

    ResponderExcluir
  2. 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?

    ResponderExcluir
  3. 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.

    ResponderExcluir
  4. Anônimo,

    para linux você tem que baixar o codigo fonte.

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

    ResponderExcluir
  6. 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?

    ResponderExcluir