我刚刚发现了optparse模块的存在。我个人总是使用getopt,所以我不在乎寻找更好的东西。然而,很明显,optparse更先进,所以我希望它是将来从命令行获取选项的首选方式。
无论如何,这件事让我印象深刻。我现在想知道是否有我从一开始就使用的模块或功能,在标准库中有更好的选择。是否有这样一个紧凑和快速浏览列表,喜欢“以前的解决方案:getopt。更好的解决方案:optparse(自python 2.x)”?
编辑按照约定标记为CW。
答案 0 :(得分:2)
我建议这可能是开始这样一个列表的好地方
请注意,pep389用argparse
替换optparse collections.defaultdict
在您使用dict.setdefault
集合模块是一个很好的熟悉,因为它在Python3中有很多新东西
如果您不需要保留列表
,则生成器表达式通常比列表推导更好三元运算符b if a else c
代替a and b or c
并解决所有问题
multiprocessing
取代你正在做的任何其他方式;)
itertools.izip_longest
避免在压缩不均匀的事物时使用变通方法
答案 1 :(得分:1)
不完全紧凑,只参考标准库(以及标准Python的其他部分)而不是任何第三方软件包,所有"What's New in Python X.X?"文章都有。
除此之外,还有谷歌,除了随机博客等,我认为没有任何此类列表。
答案 2 :(得分:0)
我不绝对同意“optparse
优于getopt
”的陈述。如果optparse
套房更好,那并不意味着有人会发现getopt
更为可取。它们用于不同的目的:getopt
更简单,开始使用时需要更少的理解(特别是如果您熟悉其他来源的getopt:例如shell脚本),optparse
更强大,更多详细。但是,如果我只需要获得一个或两个命令lime参数,我甚至可以使用简单的if
语句。
总而言之,每个工具都有其目的,每种情况都可能需要一个更适合这种情况的不同工具。
答案 3 :(得分:0)
我使用Richard Gruet的Python Quick Reference,这是Python的一个很好的参考,包括标准库的一些更重要的部分。它可以很好地使用颜色编码和笔记对语言和库进行更改。
例如,请查看his section on getopt和list of modules and packages in base distribution。
它尚未针对Python 3进行更新,但我仍抱有希望!