2016-05-04 26 views
5

Şu anda Python 2.7 kullanıyorum ve böyle bir dosyayı yüklemeye çalışıyorum "İsimli Resim Modülü":imp.load_source() atma Hata Python 2.7

myPlt = imp.load_source('SourceFile', 'path/to/SourceFile.py') 

Ancak SourceFile.py ithalatı SourceFile ile aynı dizinde olan diğer modül modülü. paket yapısı aşağıdaki gibidir:

/path 
.../to 
     ...SourceFile.py 
     ...OtherModule.py 
     ...__init__.py 

Ben load_source çalıştırdığınızda, hata "ImportError: OtherModule adında bir modül" olsun

benim load_source çağrı yanlış mı? SourceFile'ı içe aktarmam için alternatif bir yol var mı?

+0

yük 'OtherModule.py' ilk? – Natecat

+0

Neden tüm paketi doğrudan yüklemiyorsunuz? –

+0

@AnmolSinghJaggi Elbette bunu deneyebilirim, ama bunun için sözdizimi ne olurdu? –

cevap

0

Dene:

imp.load_source ("dizin", "dizin" + "filename.py")

+0

Ne yazık ki, aynı hatayı döndürmek gibi görünüyor ... dizin yolundaki her klasörde __init__.py dosyasına ihtiyacım var mı? Şu anda sadece kendileriyle birlikte dosyada bulunan scriptler var –

+0

Hayır. Sadece açık olmak gerekirse hangi dosya hangi dosyayı yüklüyor? SourceFile.py Bu yükleme deyimi SourceFile.py diyor izlenim altındaydı ... Aynı dizinde iseniz, imp.load_source (".", "SourceFile.py") yapmalısınız SourceFile.py yüklemek istiyorsanız – mattsap