IronPython 은 닷넷 상에서 동작하는 애플리케이션을 만드는 Python 기반 언어 및 툴이다.
2011년 3월 12일에 출시된 IronPython 2.7 은 닷넷 4.0 과 Visual Studio 2010 에 최적화되어 있다.

               IronPython 홈페이지: http://ironpython.net/

다음은 IronPython 용으로 만들어진 초 간단 Hello 예제의 소스이다. (파일명을 hello.py 로 저장하였다.)

# coding: 949

print "Hello"
print "안녕하세요?"


소스파일의 인코딩이 ms949 나 cp949도 아니고 그냥 949 이다. (IronPython 2,7 에서는 이렇게 해야 한글을 사용할 수 있다.)

저 소스를 실행하려면 명령창을 열고,

    set PATH=%IRONPYTHON_HOME%;%PATH%

한 다음

    ipy hello.py
    (또는 ipyw hello.py)

하면 된다. (한글도 잘 출력된다.)
IRONPYTHON_HOME 은 IronPython 2.7 이 설치된 폴더의 경로명로 저장한 환경변수이다.
어번에는 저 소스를 컴파일하여 실행파일 hello.exe 를 만들어 보겠다.

ipy %IRONPYTHON_HOME%Tools\Scripts\pyc.py /main:hello.py /target:exe /platform:x86

명령창에서 위의 명령을 내리면 hello.dll 파일과 hello.exe 파일이 생긴다.
만일 64비트 윈도우 환경에서 실행될 파일을 만들자면 옵션 /platform:x86 대신 /platform:x64 로 한다.
이제 hello.exe 를 실행하면 실헹결과로 명령창에 메세지 두 줄이 출력될 것이다.

다른 시스템에 가져 가서 실행하려면 그 시스템에 런타임 환경인 닷넷 4.0 이 설치되어 있어야 하고,
hello.dll 파일과 hello.exe 파일만 가져가면 된다.


이제 GUI Hello 예제(그래픽 사용자 인터페이스()를 갖는 Hello 예제)를 작성해 보자.
(파일명 HelloWinIPT.py 로 저장하였다.)

# coding: 949

# Filename: HelloWinIPY.py
#  Compile: ipy pyc.py /main:HelloWinIPY.py /target:winexe /platform:x86

import clr

clr.AddReferenceByPartialName("System.Windows.Forms")
clr.AddReferenceByPartialName("System.Drawing")

from System.Windows.Forms import *
from System.Drawing import *

f = Form()
f.Width = 300
f.Height = 140
font = Font("Verdana", 16)
f.Text = "Greeting"

lb = Label(Text = "Hello")
lb.Font = font
lb.Location = Point(10, 20)
lb.Width = 260
f.Controls.Add(lb)

tbox = TextBox()
tbox.Location = Point(10, 60)
tbox.Width = 170
f.Controls.Add(tbox)

btn = Button(Text = "인사하기")
btn.Location = Point(190, 60)
btn.Width = 90
f.Controls.Add(btn)

def sayHello():
    lb.Text = "Hello, " + tbox.Text + "!"
   

def click(f, a):
    sayHello()
   

def greet(f, ev):
    if ev.KeyChar == chr(13):
        sayHello()
   

btn.Click += click
tbox.KeyPress += greet

Application.Run(f)


명령창에서 

    ipy HelloWinIPY.py
    (또는 ipyw HelloWinIPY.py)

명령으로 실행된다. 다음은 실행 결과를 캡쳐한 그림이다.


실행 파일 HelloWinIPY.exe 파일을 만들려면

ipy %IRONPYTHON_HOME%Tools\Scripts\pyc.py /main:HelloWinIPY.py /target:winexe /platform:x86

명령을 내린다. 그리면 HelloWinIPY.dll 파일과 HelloWinIPY.exe 파일이 생긴다.
(만일 64비트 윈도우 환경에서 실행될 파일을 만들자면 옵션 /platform:x86 대신 /platform:x64 로 한다.)
이제 HelloWinIPY.exe 를 실행하면 위와 마찬가지로 실행된다.
(메세지 출력은 "인사하기" 버튼을 클릭해도 되고, 텍스트 박스에서 엔터 키를 눌러도 된다.)

마찬가지로 다른 시스템에 가져 가서 실행하려면 그 시스템에 (런타임 환경인) 닷넷 4.0 이 설치되어 있어야 하고, HelloWinIPY.dll 파일과 HelloWinIPY.exe 파일만 가져가면 된다.


Posted by Scripter
,