Он должен идти до операторов import
или from
, которые в этом нуждаются (что, как вы говорите, очевидно). Так, например, модуль может начинаться с:
import sys
import os
import math
try:
import foo
except ImportError:
if 'foopath' in sys.path: raise
sys.path.append('foopath')
import foo
Обратите внимание, что я добавил условное добавление (в случае сбоя импорта и путь к конкретному модулю еще не включен sys.path
), чтобы избежать риска того, что sys.path
может закончиться десятками случаев строки foopath
, которая не будет особенно полезна; -).