IronPython 임베딩 예제
스크립트 언어로 파이썬을 쓰고자 많은 테스트를 했다. IronPython에 대한 문서화가 부족한 편이라 코끼리 더듬듯 겨우 원하는 것을 이룰 수 있었다. 아래는 c#에서 파이썬 스크립트를 실행하고 결과를 받아온다. 속도는 느리지만, 렌더링 때만 안쓰면 별 지장 없을 듯 싶다.
- IronPython 임베딩시 가장 많이 참고한 문서(managed debugger에 스크립트 언어로 IronPython이 쓰였다): http://blogs.msdn.com/jmstall/archive/2005/09/01/Howto_embed_ironpython.aspx
- 샘플 코드: http://blogs.msdn.com/jmstall/articles/Sample_Mdbg_IronPython.aspx
아래는 내가 테스트하려 만든 코드
[ cs1.cs ]
using System;
using IronPython.Hosting;
namespace cs1
{
class Program
{
static void Main(string[] args)
{
PythonEngine engine = new PythonEngine();
/*
* python 인터프리터에 10**10 연산을 요청한다
*/
engine.Execute("10**10");
object result = engine.GetVariable("_"); // _: execute 실행 결과가 담긴 전역 변수
Console.WriteLine("result:{0}", result.ToString());
/*
* simply.py를 실행하고 결과가 담긴 result를 가져온다.
*/
int number = 50;
engine.SetVariable("number", number);
engine.ExecuteFile("simple.py");
result = engine.GetVariable("result");
Console.WriteLine("result:{0}", result.ToString());
}
}
}
[ simple.py ]
def Divide ( number ) :
return number / 2
result= Divide ( number )
'Python' 카테고리의 다른 글
IRonPython 1.0 릴리즈 (0) | 2007.06.16 |
---|---|
IronPython에서 Python 기본 라이브러리 사용하기 (0) | 2007.06.16 |
C#에서의 Python사용..(IronPython) (0) | 2007.06.16 |