下面是我的应用程序结构的一小部分:
/project
/core
/foo
/bar
/cli <----
- clean_up.py
- foo_service.py
- bar_rest_api_service.py
我有近20个脚本需要作为服务、cronjobs或手动执行。所有这些脚本目前都位于/project/cli中,因为它们是在命令行接口上执行的,但是我认为定义是不正确的。 每个脚本从/project/core中导入模块,但不导入任何模块。目的:对高层的可执行文件有一个清晰的概述。 其他我想起来的名字:/bin, /exe -都是错误的,但我正在寻找类似的东西。 我不是在寻找任何基于观点的东西,我是在寻找用于这类脚本的通用术语。 任何想法?如果可能,请说出一个来源(例如PEP)。 提前谢谢! 问题来源StackOverflow 地址:/questions/59379334/python-whats-the-right-word-for-these-type-of-files
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在Python项目结构中,对于这类可执行脚本或命令行工具,一个常见的、遵循社区惯例的目录名称是scripts
。这个目录专门用来存放独立运行的脚本,它们可能作为服务、cronjobs或者直接从命令行调用。这样的命名既清晰地表达了这些文件的用途,也符合开发者的预期。
虽然没有特定的PEP直接规定必须使用scripts
目录,但根据PEP 8(Python的编码风格指南)的精神,选择有意义且简洁的目录名是很重要的。在实际项目和开源库中,scripts
是一个广泛接受且易于理解的约定。
例如,Django等知名项目也会采用类似结构来组织其脚本。此外,当你将项目打包发布时,这些脚本可以通过设置entry_points
在安装后直接作为命令行工具可用,进一步强化了它们作为独立可执行组件的角色。
因此,你可以考虑将你的脚本移动到如下结构中:
/project /core /foo /bar /scripts # 将cli重命名为scripts /script1.py /script2.py ...
这样做的好处是,其他开发者能够快速识别出这些脚本的作用,并且符合Python项目的常见布局习惯。