经过几个小时的调试和反复试验,我发现导入两个独立的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")
两个Python模块是rtree和ESRI的arcpy,我在Windows上运行这两个模块(问题出现在Windows 7和Windows Server 2008 R2上,以及32位和64位上Python安装)。
我logged the issue,但我想知道一个模块在另一个模块中破坏功能的可能原因是什么?
我快速检查了全局变量,并修改了系统路径。两者都依赖于DLL。
还有哪些其他因素可以负责?
答案 0 :(得分:2)
使用时会发生:
from (module) import *
如果两个模块都具有相同名称的函数。 无耻地取自@karthikr