몇 시간 동안의 디버깅과 시행 착오 끝에 두 개의 독립적 인 Python 모듈을 가져 오면 그 중 하나의 기능이 작동을 멈추는 것을 발견했습니다.한 파이썬 모듈이 다른 파이썬 모듈을 깨뜨릴 수 있습니까?
import arcpy
# works
sde_conn = arcpy.ArcSDESQLExecute(r"C:\temp\test.sde")
아직 :
import arcpy
import rtree
# fails
sde_conn = arcpy.ArcSDESQLExecute(r"C:\temp\test.sde")
두 파이썬 모듈은 rtree하고 ESRI의 arcpy, 문제가 모두 Windows 7 및 Windows Server 2008 R2에서 발생 둘 다 내가 (Windows에서 실행 한의, 그리고에 32 비트 및 64 비트 Python 설치).
I logged the issue하지만 한 모듈이 다른 모듈에서 기능을 위반할 수있는 원인은 무엇입니까?
전역 경로를 빠르게 확인하고 시스템 경로를 수정했습니다. 둘 다 DLL에 의존합니다.
다른 어떤 요인이 원인 일 수 있습니까? 사용하는 경우
''rtree import *'와''arcpy import *'에서 충돌하는 함수 이름이있을 때 발생합니다. – karthikr
파이썬은 동적 언어이므로 모듈이 여러 가지 방법으로 동작 할 수 있습니다 심하게하고 다른 것들을 깰. 원숭이 패치 내장 또는 표준 모듈은 다른 모듈을 망칠 수있는 좋은 후보입니다. –