我应该在哪里放置 Python 包的演示脚本?

发布于 2024-12-08 23:13:59 字数 153 浏览 0 评论 0原文

我正在编写一个新的 python 包供其他人使用。为了演示如何使用它,我正在编写一个演示脚本来执行新包的主要部分。

这样做的约定是什么,以便其他人可以轻松找到该脚本?它应该是一个单独的模块(以什么名称)?它应该位于包的根目录中吗?从包装中取出?在 __init__.py 中?

I am coding a new python package to be used by others. To demonstrate how it should be used, I am writing a demo script that executes the main parts of the new package.

What is the convention for doing this, so that other will find the script easily? Should it be a separate module (by what name)? Should it be located in the package's root directory? Out of the package? In __init__.py?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

好听的两个字的网名 2024-12-15 23:13:59

我从未见过任何真正的约定,但我个人将其放在 __init__.py 中的主哨兵中,以便可以通过 python -m somepackage 调用它。

I've never seen any real convention for this, but I personally put it in a main sentinel within __init__.py so that it can be invoked via python -m somepackage.

薄暮涼年 2024-12-15 23:13:59

它应该是一个单独的模块(用什么名称)?

demo/some_useful_name.py

演示目录包含演示脚本。同样,测试目录包含所有单元测试。

它应该位于包的根目录中吗?

不,它不是包装的一部分。这是一个演示。

从包装中取出?

是的。

init.py中?

绝不。


一个包有两条生命。 (1) 作为卸载的源,(2) 在 lib/site-packages 中作为安装的代码。

“源”应包括 README、setup.py、演示目录、测试目录和包本身。

顶级“源”setup.py 应仅安装该包。演示和测试未安装。它们作为下载的一部分被抛在后面。

Should it be a separate module (by what name)?

demo/some_useful_name.py

A demo directory contains demo scripts. Similarly, a test directory contains all your unit tests.

Should it be located in the package's root directory?

No. It's not part of the package. It's a demo.

Out of the package?

Yes.

In init.py?

Never.


A package has two lives. (1) as uninstalled source, (2) in the lib/site-packages as installed code.

The "source" should include README, setup.py, demo directory, test directory, and the package itself.

The top-level "source" setup.py should install just the package. The demo and test don't get installed. They get left behind as part of the download.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文