我正在编写一个新的Python包供别人使用。为了演示如何使用它,我正在编写一个演示脚本来执行新软件包的主要部分。我应该在哪里放置一个Python包的演示脚本?
这样做的惯例是什么,以便其他人能够轻松找到脚本?它应该是一个单独的模块(按什么名称)?它应该位于程序包的根目录中吗?包装外面?在__init__.py
?
我正在编写一个新的Python包供别人使用。为了演示如何使用它,我正在编写一个演示脚本来执行新软件包的主要部分。我应该在哪里放置一个Python包的演示脚本?
这样做的惯例是什么,以便其他人能够轻松找到脚本?它应该是一个单独的模块(按什么名称)?它应该位于程序包的根目录中吗?包装外面?在__init__.py
?
我从来没有见过这样的真实约定,但我个人把它放在__init__.py
之内的一个主要哨兵,以便它可以通过python -m somepackage
调用。
它应该是一个独立的模块(由什么名字)?
演示/ some_useful_name.py
的演示目录包含演示脚本。同样,一个测试目录包含你所有的单元测试。
如果它位于包的根目录?
号这不是软件包的一部分。这是一个演示。
出来的包?
是的。
In init .py?
从不。
一个包有两条生命。 (1)作为卸载源,(2)在lib/site-packages中安装代码。
“源代码”应该包括README,setup.py,演示目录,测试目录和软件包本身。
顶级“source”setup.py应该只安装包。演示和测试不会被安装。作为下载的一部分,他们被抛在后面。
+1:我可能只在某个开关存在的时候执行它,比如'python -m somemodule --demo'。这在添加其他执行模式时会一致,如运行所有测试。 –