2011-08-15 2 views
2

일부 자바 코드를 자이 썬으로 변환 중이며 java.lang.Runtime을 호출해야하는 부분이있다. 자이 썬의 이름 충돌 : java.lang.Runtime.exec 및 파이썬의 exec

Runtime.getRuntime().exec(cmd); 

내가이 자이 썬에 번역해야하지만, 파이썬의 간부 인 기능에 내장 된 "간부"혼란 : 자바의 코드는 읽습니다. 내가 검색과 같은 것을 사용하는 제안 발견 -

from java.lang.Runtime import exec as javaExec 

또는

import java.lang.Runtime.exec as javaExec 

하지만 여전히 간부의 두 가지 버전을 혼동하고, 두 번째는 getRuntime에 대한 호출을 허용하지 않는 첫 번째를() .

파이썬의 함수 또는 Java 함수를 사용하여 이름 충돌이 발생하지 않는 자이 썬에서이 행을 작성하는 방법이 있습니까?

답변

3
javaexec = getattr(Runtime.getRuntime(), "exec") 

그래야합니다. 더 나은 :

import subprocess 
subprocess.Popen(cmd) 
+0

일부 getattr (:) :) – KevinDTimm