2011-10-13 1 views
0

I원숭이 패치 및 파견

그래서 chaco.api를 추가하고 올바른 하나에 파견하게하는 가장 빠른 방법은 무엇입니까 from enthought.chaco.api import .. 같은 다음과 같은 상황, enthought.chaco2와 나는 많은 수입이라는 모듈을 가지고?

import enthought.chaco2 as c2 
import enthought 
enthought.chaco = c2 

을했지만 작동하지 않습니다

나는 예를 들어, 몇 가지를 시도했다. 실제 모듈을 만들어 경로에 추가해야 할 수도 있습니다. 그것이 유일한 방법입니까?

답변

0

찾고있는 동작은 무엇입니까?

당신은 from enthought.chaco import api as ChacoApi을 사용하고 ChacoApi.foo() 또는 chaco_class = ChacoApi.MyClass() 같은 ChacoApi를 통해 모듈의 모든 콘텐츠를 해결할 수 있습니다.

from enthought.chaco.api import *을 사용하고 (권장하지 않음) 모듈의 모든 내용을 기본 네임 스페이스에 추가 할 수 있습니다. __all__ 변수 선언을 chaco 파일의 __init__.py 파일에 추가 할 수 있으며 이전 예제 (* 포함)는 목록 __all__을 입력 한 것만 가져올 수 있습니다.

아니면 당신이 내 의견에 완벽하게 정상적으로 당신이 지금 당장 할 방법을 사용할 수 있습니다 특별히 콘텐츠를 가져올 수 ...

+0

나는 그런 방법으로 확인해야합니다 "그 enthought.chaco.api 가져 오기에서 x "는 비록 내가 enthought.chaco2 만 가지고도 잘 동작합니다 .. 그래서 chaco.api가 아직 발견되지 않았기 때문에 모든 것을 가져 오기가 실제로 도움이되지 않습니다. 나는 (enghought.chaco.api) 모든 것을 가져 오는 또 다른 패키지를 만들려고했지만 이것 역시 문제가있다. "enthought.etsconfig.etsconfig import ETSConfig"와 같은 다른 수입은 작동하지 않는다 –

+0

이미 etsproxy로 해결 된 Enthought가 이미 비슷하다. 간단히 말해서 전체 namspace 및 modules 구조를 다시 만들고 각각에 새 네임 스페이스를 사용하여 가져 왔으며 필자는이를 피하고 싶습니다. –