2013-06-21 19 views
5

, iki bağımsız Python modülleri ithal durmasına bunlardan birinde bir işlevi neden olduğunu buldular.Bir Python modülü başka nasıl bozulabilir? hata ayıklama ve deneme yanılma birkaç saat sonra

import arcpy 
# works 
sde_conn = arcpy.ArcSDESQLExecute(r"C:\temp\test.sde") 

Oysa:

import arcpy 
import rtree 
# fails 
sde_conn = arcpy.ArcSDESQLExecute(r"C:\temp\test.sde") 

iki Python modülleri rtree ve Esri'nin arcpy, konu hem Windows 7 ve Windows Server 2008 R2 üzerinde meydana ikisi de I (Windows üzerinde çalışan var ve üzerinde 32 bit ve 64 bit Python yüklemeleri).

Ben logged the issue, ama başka bir işlev kırma bir modülün olası nedenleri ne olduğunu bilmek istiyorum?

Ben globaller için hızlı bir onay vardı ve sistem yolunu değiştirerek. Her ikisi de DLL'lere güveniyor.

başka hangi faktörler sorumlu olabilir? kullanırken

+1

Size 'rtree ithalat * dan' yapmak ve 'arcpy ithalat * dan' ve işlev adlarını çelişkilidir orada ne olur @karthikr alınan – karthikr

+3

Python olmanın dinamik dil bir modül davranması olabilir pek çok yolu vardır Kötü ve diğer şeyleri kır. Maymun yama yerleşik veya standart modüller diğer modülleri bulmak için iyi bir adaydır. –

cevap

2

Olur:

from (module) import * 

her iki modül aynı adları taşıyan işlevler varsa. utanmadan

+1

Kesinlikle kontrol edeceğim ilk şey ama bu durumda iki basit ithalatım var. – geographika