2010-01-19 11 views
3

Django Framework에서 C++ 프로그램을 실행해야합니다. 어떤 점에서는 views.py에서 UI로부터 입력을받습니다. 일단 이러한 입력이 있으면 C++ 프로그램을 사용하여 입력을 처리하고 그 결과를 사용해야합니다. 가능한가? C++ 프로그램은 실행 파일과 파이썬Django Framework에서 C++ 프로그램 실행

답변

10

. 또 다른 방법은 boost :: python입니다 (하지만 personnaly, 나는 swig을 선호합니다).

1

당신은 파이썬에서 가져올 수있는 C++ 모듈을 만들 한모금을 사용할 수 있습니다에서 subprocess 모듈을 호출하는 컴파일 것을

0

이렇게하는 방법 중 하나는 os.popen입니다. 이 명령을 호출하는 경우

results = os.popen('mycpp %s' % user_input).read() 

그러나이 정말 빨리 계산 비용 얻을 수 종종 '가 os.popen 기본적으로 포크 원인 : C 가정 ++ 실행 파일은 당신이 뭔가를 할 것, 시스템 전체 경로에 있으며 mycpp라는 서브 프로세스를 끈다. 또한 문서에서 언급했듯이, Python 2.6부터는 더 이상 사용되지 않으므로 신중하게 진행하십시오.

+2

뿐만 아니라 그것은 사용되지 않습니다, 그것을 사용하는 이유가 없습니다합니다. S.Mark의 답변에서 언급 한 것과 똑같은 기능이'subprocess' 모듈에서 사용 가능합니다. –

0

* nix에 있다고 가정하고 C++ 프로그램을 컴파일하여 시스템의 어딘가에 저장하십시오 (예 :/home/rishabh/myexe). 장고 응용 프로그램에서 지금

명령 모듈을 사용하여 실행 파일을 호출

import commands 

status, res = commands.getstatusoutput("/home/rishabh/myexe") 

# status contains process status (0 for success, non-zero for unsuccesful termination) and res contains the output of the process