// C# 

// IronPython
using Microsoft.Scripting;
using Microsoft.Scripting.Hosting;
using IronPython;
using IronPython.Hosting;
using IronPython.Runtime;
using IronPython.Modules;




public void ExecMyPython(string pythonFile)
{
    ScriptEngine engine = Python.CreateEngine();
    ScriptSource source = engine.CreateScriptSourceFromFile(pythonFile);
    ScriptScope scope = engine.CreateScope();
    source.Execute(scope);

    string className = "Calculator";
    dynamic Calculator = scope.GetVariable(className); // 파이썬 내 클래스명 가져오기
    dynamic calc = Calculator(); // 클래스 객체
    int result = calc.add(4, 5); // 클래스에서 함수 사용
    Console.WriteLine(result);
}
# Calculator.py

class Calculator(object):
    def add(self, a, b):
        return a + b

 

 

 

 

https://medialink.tistory.com/41#:~:text=Python%20class%EC%9D%98%20%ED%95%A8%EC%88%98%EB%A1%9C,%ED%95%98%EB%8A%94%20%ED%95%A8%EC%88%98%EB%A5%BC%20%EC%84%A0%EC%96%B8%ED%95%A9%EB%8B%88%EB%8B%A4.&text=c%23%20%EC%BD%94%EB%93%9C%EB%A5%BC%20%EB%8B%A4%EC%9D%8C%EA%B3%BC,%EA%B2%B0%EA%B3%BC%EB%A5%BC%20%EC%96%BB%EC%9D%84%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4.

 

c#과 Python의 연동

C#과 Python 연결 Linux에서 Python의 입지는 매우 큽니다. 특히 머신 러닝(machine learing) 관련된 내용은 Python으로 작성된 결과가 많아, 이를 c#에서 직접 사용하고 싶은 욕망이 큽니다. 이 글에서는 Python

medialink.tistory.com

 

'프로그래밍 언어 > C#' 카테고리의 다른 글

[C#] Winform 모든 포커스 해제  (0) 2022.09.05
[C#] 웹페이지 값 가져오기  (0) 2022.09.05
[C#] Yes No 버튼 | 확인 버튼  (0) 2022.08.29
[C#] 명령 프롬프트 실행  (0) 2022.08.26
[C#] .ini 파일 읽기 쓰기  (0) 2022.08.22
[C#] GUI 연습 | MetroFramework 적용  (0) 2022.08.19
[C#] C# 연습  (0) 2022.06.21

+ Recent posts