我想从2个不同的文件夹导入Python程序:
Prog1
的/home/francis/docs/folder1/
来自路径Prog2
/home/francis/docs/folder2/
如何在位于/home/francis/docs/folder3/
的主程序中导入这两个程序?
答案 0 :(得分:5)
将它添加到Prog3的顶部:
import sys
sys.path.append('/home/francis/docs/folder1/')
sys.path.append('/home/francis/docs/folder2/')
import Prog1
import Prog2
答案 1 :(得分:1)
答案 2 :(得分:0)
将其他两个文件夹添加到PYTHONPATH
,然后像往常一样使用import folder1
导入它们。来自http://docs.python.org/tutorial/modules.html#the-module-search-path
当导入名为spam的模块时,解释程序在包含输入脚本的目录中搜索名为spam.py的文件,然后在环境变量PYTHONPATH指定的目录列表中搜索。它具有与shell变量PATH相同的语法,即目录名列表。如果未设置PYTHONPATH,或者在此处未找到文件,则搜索将继续依赖于安装的默认路径;在Unix上,这通常是。:/ usr / local / lib / python。
另请参阅PYTHONPATH本身的文档:http://docs.python.org/using/cmdline.html#envvar-PYTHONPATH
答案 3 :(得分:0)
或者你可以添加
"/home/francis/docs/"
到你的pythonpath,然后:
from folder1 import prog1
或
import folder1.prog1 as p1
(您必须使用内容调整folder1和folder2中的 init 文件)