我有几个项目目录,希望能拥有特定于它们的库/模块。例如,我的目录结构可能像这样:
myproject/
mymodules/
__init__.py
myfunctions.py
myreports/
mycode.py
假设在
myfunctions.py
中有一个名为 add
的函数,我可以使用最简单的方法从 mycode.py
中调用它:execfile('../mymodules/myfunctions.py')
add(1,2)
但更为复杂的是,我还可以进行以下操作。
import sys
sys.path.append('../mymodules')
import myfunctions
myfunctions.add(1,2)
这是最符合习惯的方法吗?还有一些提到修改PYTHONPATH
(os.environ['PYTHONPATH']
?),但是我需要注意其他事项吗?
此外,我曾看到import
语句包含在类语句中,在其他情况下,定义在包含类定义的Python文件的顶部。是否有正确/首选的方法来做到这一点?
mycode.py
直接移动到myproject
中。 - Ruggero TurraPYTHONPATH
变量目录(这在技术上与在sys.path
中定义的搜索路径不同?)。就像os.environ[PYTHONPATH] += ':../mymodules'
或其他什么东西。 - hatmatrix