9

我试图了解 Python 的命令行参数,并且一直在阅读有关argparse 模块的标准库文档。他们提到了短格式和长格式命令行选项的概念,短格式选项用单个破折号-(例如-f)指定,长格式选项用两个破折号--(例如--filename)指定。

它没有描述短格式和长格式选项之间的区别,只是一个明显比另一个短。在谷歌搜索这些概念之后,在我看来,短格式选项很久以前就起源于 C 语言。当时它们只是一个字符。

我的问题是,我是否应该继续在 Python 中仅使用单个字符作为短格式命令行选项?这是用户所期望的吗?或者是否可以在短选项中使用三个字符缩写中的两个(例如-fn)?

4

1 回答 1

2

我相信我们可以为POSIX标准和GNU编码指南提供参考。尽管没有某种“全球”标准,但我想我们至少在为 *nix 编码时应该遵守这些规则。

根据POSIX 约定,每个选项名称应该是可移植字符集中的单个字母数字字符(alnum 字符分类)。并且所有选项前面都应该有“-”分隔符。

GNU 指南增加了长选项

长选项包括 -- 后跟由字母数字字符和破折号组成的名称。选项名称通常为一到三个单词,并用连字符分隔单词。只要缩写是唯一的,用户就可以缩写选项名称。

于 2021-11-04T13:32:46.073 回答