IronPython 은 닷넷 상에서 동작하는 애플리케이션을 만드는 Python 기반 언어 및 툴이다.
2011년 3월 12일에 출시된 IronPython 2.7 은 닷넷 4.0 과 Visual Studio 2010 에 최적화되어 있다.
IronPython 홈페이지: http://ironpython.net/
다음은 IronPython 용으로 만들어진 초 간단 Hello 예제의 소스이다. (파일명을 hello.py 로 저장하였다.)
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 파일만 가져가면 된다.
'프로그래밍 > IronPython' 카테고리의 다른 글
IronPyhon의 버전별 (명령 프롬프트) 실행 초기 상태 (0) | 2012.04.19 |
---|---|
C#으로 만든 dll 라이브러리를 IronPython에서 사용하기 (0) | 2012.04.19 |
IronPython이 실행되지 않을 때 (0) | 2012.04.19 |