我注意到Python 2.7文档中包含了另一个命令行解析模块。除了
为什么会创建另一个命令行解析模块?我为什么应该使用它而不是
getopt
和optparse
之外,现在我们还有argparse
。为什么会创建另一个命令行解析模块?我为什么应该使用它而不是
optparse
?是否有新功能我需要知道的?getopt
和optparse
之外,现在我们还有argparse
。optparse
?是否有新功能我需要知道的?从Python 2.7
开始,optparse
已经被弃用,并且希望将来会消失。
argparse
更好的原因在于其原始页面上列出了所有原因(https://code.google.com/archive/p/argparse/):
+
和/
更多信息还在PEP 389中,这是使argparse
进入标准库的方式。
optparse
的“纯洁性”,然后又讨论了如何增加其复杂性,这使得它听起来像是被编码成像石头一样灵活(很差)。 - Nick Temail
包也不太远)。parser.add_argument('--long-opt', '-l',...)
的形式;'--' 很容易处理,而且可以按照你喜欢的方式进行设置。 - SilverbackNet最好的Python添加原因来源是它的PEP:PEP 389:argparse - 新命令行解析模块,特别是标题为Why aren't getopt and optparse enough?的部分。