python相对包含

时间:2011-01-24 09:39:35

标签: python google-app-engine

我创建了一个小框架,我的目录结构就是这个

myframework -> contrib -> jinja2
myframework -> contrib -> session
myframework -> start.py

问题是针对contrib下的包,实际上jinjia2就像session有子目录而且在jinja2的__init__.py中有一些相对于根位置的导入 所以现在为了使它工作,我必须将jinja2包放入root目录,有一种方法可以使用

1 个答案:

答案 0 :(得分:3)

如果您要重新设计已使用相对导入的包结构,那么您将拥有hard time。只需按照设计方式和多个包使用包,只需确保它们都在PYTHONPATH中。 relative imports在以下目录结构和引用机制下工作得最好。只需确保您的模块以类似的方式访问文件。