【问题标题】:Python argparse what is the diffenrence between "-" and "--" arguments? [duplicate]Python argparse“-”和“--”参数有什么区别? [复制]
【发布时间】:2019-09-04 20:19:49
【问题描述】:

在 Python 3.* argparse 中以“-”和“--”开头的参数有什么区别?

【问题讨论】:

  • 短期和长期期权
  • 什么是短期和长期期权?
  • -v vs --version,例如
  • 这不仅仅是一个 argparse 的东西——它是 GNU 约定,扩展了 POSIX 指定的约定。请参阅pubs.opengroup.org/onlinepubs/9699919799/basedefs/… 末尾的“实用程序语法指南”,了解 POSIX 标准部分,gnu.org/software/libc/manual/html_node/Argument-Syntax.html 了解 GNU 扩展部分。
  • argparse 通常遵循,但不严格执行 GNU 约定。短线可以串在一起,如答案所示。长不了。 Long(如果提供)用于参数名称 (dest)。常见的argparse 做法是同时提供一个参数 - 一个简短的参数和一个更具描述性的参数(但它也可以识别缩写)。

标签: python python-3.x argparse


【解决方案1】:

双连字符 (--) 只是较长参数的标准。

例如ls --helpls 提供帮助。

同样,单个连字符 (-) 是较短(通常是一个字母)参数的标准。

例如ls -t 列出按最后修改日期排序的目录内容。


由开发人员决定他们的参数将采用哪种格式,但用户要记住哪些选项可用!

请注意,没有标准(据我所知),但通常更常用的选项被赋予单个字母优先级。

这也意味着选项可以串在一起,例如ls -1tr 仅在一列中列出目录的内容,最新的内容位于底部。这里-1tr 参数被等效解析为三个独立的-1-t-r 参数。这不会[通常 *] 使用双连字符参数实现。

* 但请注意,这可能是因为开发人员可以根据自己的喜好使用他们的程序。

【讨论】:

  • 个相关标准(嗯,一个正式的标准和一个来自有影响力的来源被广泛采用的约定);请参阅我对该问题的评论中的链接。
猜你喜欢
  • 2020-05-25
  • 2018-06-11
  • 2014-02-24
  • 2018-05-14
  • 2018-06-24
  • 2013-01-22
  • 1970-01-01
  • 1970-01-01
  • 2015-11-23
相关资源
最近更新 更多