2011-04-22 18 views
31

Kodun bir yerinde ImportError istisnası alıyorum, ancak aynı modül, uygulamanın başlatılmasında güvenle içe aktarılabilir. Python'un içe aktarılacak modülleri hangi yollarda aradığını görmek için merak ediyorum, böylece bu sorunun neden oluştuğunu izleyebilirim.Python'da geçerli içe aktarım yolları nasıl alınır?

print sys.path

bu sistem bir modül almak için zaman çalışır görünüyor TÜM yolların listesi mı: bunu buldum?

+1

http://docs.python.org/library/sys.html#sys.path oldukça kesin görünüyor. Neden sordun? –

cevap

41

Python'un varsayılan olarak denetlediği yol konumları, sys.path denetlenerek denetlenebilir.

import sys 
print sys.path 
+1

Bu, bir modülü almaya çalışırken sistemin göründüğü TÜM yolların listesi mi? – aligf

+1

Evet, öyle. Http://docs.python.org/tutorial/modules.html#the-module-search-path adresindeki Python Standard Library Modules belgelerinde daha fazla ayrıntı –

+0

Mükemmel teşekkürler! – aligf

3

Eğer biraz daha iyi biçimlendirme isterseniz:

import sys 

from pprint import pprint 

pprint(sys.path) 
0

Sys.path ithalat bulurken, Python bakıyor bütün yolların bir listedir. Bir veya daha fazla python dosyası içeren bir dizine başka bir yol eklemek isterseniz, aşağıdakileri kullanabilirsiniz: sys.path.append('path/to/directory').

İlgili konular