您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python包结构

Python包结构

这是正确的版本:

如果失败,ImportError: No module named foo则是因为尚未设置PYTHONPATH包含的目录myproject/

恐怕其他人会建议一些技巧,让您避免设置PYTHONPATH。我敦促您不要理them它们。这就是PYTHONPATH存在的原因:告诉Python在哪里寻找要加载的代码。它功能强大,文档合理,可移植到许多环境中。人们为了避免设置技巧而玩技巧并不是这些。

显式相对进口 工作,即使没有PYTHONPATH被设置,因为它可能只是走了目录层次结构,直到找到合适的位置,它并不需要找到顶部,然后往下走。但是,它在您作为命令行参数传递给python(或等效地,直接用#!/usr/bin/python一行调用)的脚本中不起作用。这是因为在这两种情况下,它都成为__main__流程的模块。无处可走__main__-它已经在顶部了!如果您通过@H_419_31@导入 该模块在脚本中调用代码,那么就可以了。也就是说,比较:

您可以通过不直接执行脚本模块,而是创建一个bin/myscript执行导入并可能调用函数方法来利用此功能

比较一下Twisted的命令行脚本的定义方式:http ://twistedmatrix.com/trac/browser/trunk/bin/twistd

python 2022/1/1 18:43:28 有282人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶