导入python文件

时间:2011-05-23 21:09:14

标签: python python-2.7 python-import

  

可能重复:
  Python package structure

您好, 我想在我的主文件根目录下的子目录中导入一个python文件。 e.g。

import ../library/utils.py

当我将它放入我的代码并运行它时,我得到一个编译错误。

有没有办法从主文件根目录下面包含文件,还是必须在根目录下的子目录中?

感谢您的帮助。

2 个答案:

答案 0 :(得分:9)

您不导入文件,导入模块。相应地修改sys.path,然后执行import utils,例如

import sys
sys.path.append('../library')
import utils

答案 1 :(得分:3)

import sys, os
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'library')))

import utils

这将修改包含要搜索文件的目录的sys.path变量。它还将确保即使您以下列方式运行它也能正确找到它:

$ python the_file.py
$ python ../the_file.py
$ python /somewhere/over/the_file.py

这适用于正在开发,测试和培训的内容。安装的文件不需要这样的构造。