-1

我刚刚发现 optparse 模块的存在。我个人一直使用 getopt,所以我不在乎寻找更好的东西。然而,很明显 optparse 要先进得多,所以我希望它成为将来从命令行获取选项的首选方式。

总之,这件事让我印象深刻。我现在想知道是否有我从一开始就在使用的模块或函数,它们在标准库中有更好的选择。是否有这样一个紧凑且快速的浏览列表,喜欢“以前的解决方案:getopt。更好的解决方案:optparse(从 python 2.x 开始)”?

按约定编辑标记为 CW。

  • 解析命令行选项:getopt、optparse、argparse
  • 包管理:distutils、setuptools
4

4 回答 4

2

我建议这可能是开始这样一个列表的好地方

请注意,有 pep389 将 optparse 替换为 argparse

collections.defaultdict在您会使用的大多数地方工作得更好dict.setdefault

collections 模块是一个很好的熟悉的模块,因为它在 Python3 中有很多新东西

如果您不需要保留列表,生成器表达式通常比列表推导更好

三元运算符b if a else c而不是a and b or c所有问题

multiprocessing取代你做的任何其他方式;)

itertools.izip_longest避免在压缩不平整的东西时使用变通方法

于 2009-12-07T02:31:23.823 回答
1

不完全紧凑,仅指标准库(和标准 Python 的其他部分)而不是任何第三方包,所有“Python XX 中的新功能?” 论文。

除此之外,还有谷歌,我认为除了随机博客等之外没有任何这样的列表。

于 2009-12-07T02:33:10.513 回答
0

我不会完全同意“optparse优于getopt”的说法。如果optparse更适合您,这并不意味着有人不会觉得getopt更可取。它们用于不同的目的:getopt更简单,开始使用时需要更少的理解(特别是如果您熟悉其他来源的 getopt:例如 shell 脚本),optparse更强大且更详细。但是,如果我只需要获取一两个命令石灰参数,我什至可以使用简单的if语句。

总而言之,每种工具都有其用途,每种情况都可能需要更适合该情况的不同工具。

于 2009-12-07T02:32:38.097 回答
0

我使用 Richard Gruet 的Python Quick Reference,它是所有 Python 内容的很好参考,包括标准库中一些更重要的部分。它在使用颜色编码和注释对流行的语言和库进行更改方面做得很好。

例如,看看他关于 getopt 的部分,以及基本发行版中的模块和包的列表

它尚未针对 Python 3 进行更新,但我充满希望!

于 2009-12-07T03:08:02.093 回答