Scripts in python package
Python的开发应用将决定把which to be installed"包装
结果导致构(created several我omitted in the list文件结构清晰,好让更多)P></
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Project/ |-- bin/ |-- my_package/ | |-- test/ | | |-- __init__.py | | |-- test_server.py | |-- __init__.py | |-- server.py | |-- util.py |-- doc/ | |-- index.rst |-- README.txt |-- LICENSE.txt |-- setup.py |
脚本后,
1 2 3 4 | #!/usr/bin/env python from my_package import server server.main() |
它的placed into
但我的问题是,如何在开发环境
开发能让我知道
1 2 3 4 5 | user@host:~/dev/Project/$ ./bin/server-run Traceback (most recent call last): File"./bin/server-run", line 2, in import my_package ImportError: No module named my_package |
is possible to modify恩知道它会工作,如果
你需要相对进口。尝试
1 | from .. import mypackage |
或
1 | from ..mypackage import server |
文件在这里
http://docs.python.org/tutorial/modules.html包内引用
这些功能适用于Python2.5或更高版本。
要仅在开发版本中执行此操作,请尝试:
1 2 3 4 | try: from my_package import server except ImportError: from ..my_package import server |
在开发过程中,您可以使用
最简单的方法是配置正确的python路径,因此python知道在当前目录中查找
在Linux上(使用bash):
1 2 | export PYTHONPATH=. bin/server-run |
在Windows上:
1 2 | set PYTHONPATH=. python bin/server-run |