Yanıtlar:
Ayarlamazsınız PYTHONPATH
, girişleri eklersiniz sys.path
. Python paketleri için aranması gereken dizinlerin bir listesidir, böylece dizinlerinizi bu listeye ekleyebilirsiniz.
sys.path.append('/path/to/whatever')
Aslında, yol ayırıcı karakterindeki sys.path
değeri bölerek başlatılır PYTHONPATH
( :
Linux benzeri sistemlerde, ;
Windows'ta).
Bunu kullanarak dizinleri de ekleyebilirsiniz site.addsitedir
ve bu yöntem, .pth
ilettiğiniz dizinlerde bulunan dosyaları da hesaba katacaktır . (Belirttiğiniz dizinlerde durum böyle olmaz PYTHONPATH
.)
Ortam değişkenlerini şu yolla alabilir ve ayarlayabilirsiniz os.environ
:
import os
user_home = os.environ["HOME"]
os.environ["PYTHONPATH"] = "..."
Ancak tercümanınız zaten çalıştığı için bunun bir etkisi olmayacaktır. Kullanman daha iyi
import sys
sys.path.append("...")
bu, PYTHONPATH
yorumlayıcı başlangıcında dönüştürüleceğiniz dizidir .
Kontrolsüz koyarsanız sys.path.append('dir/to/path')
, zaten eklenmişse, içinde uzun bir liste oluşturabilirsiniz sys.path
. Bunun için şunu tavsiye ederim:
import sys
import os # if you want this directory
try:
sys.path.index('/dir/path') # Or os.getcwd() for this directory
except ValueError:
sys.path.append('/dir/path') # Or os.getcwd() for this directory
PYTHONPATH , çalışma zamanında değiştirebileceğiniz sys.path'de biter .
import sys
sys.path += ["whatever"]
Belirleyebileceğiniz PYTHONPATH
tarafından, os.environ['PATHPYTHON']=/some/path
ardından aramak gerekir os.system('python')
yeni eklenen yolu etkili hale getirmek için piton kabuk yeniden.
os.system()
"python kabuğunu yeniden başlatmaz", yeni bir etkileşimli Python örneği başlatır. Bundan geri döndüğünüzde, arama senaryosuna geri dönersiniz.
sys.path.insert(0, '/path/to/whatever')
.