【问题标题】:How to support both argparse and optparse?如何同时支持 argparse 和 optparse?
【发布时间】:2012-09-11 13:38:16
【问题描述】:

我有一个小型应用程序,它可以在使用 Python 2.7+ 的最新 Linux 发行版上运行,但也可以在尚未切换到 Python 2.7 的 CentOS 和 Scientific Linux 机器上运行。 optparse 已被 Python 2.7 弃用,坦率地说,无论如何我都不想支持 optparse,这就是为什么我在开发应用程序时考虑到了 argparse。但是,argparse 在这些较旧的发行版中不存在。此外,系统管理员对安装argparse 的反向端口相当怀疑。

现在,我应该这样做吗?坚持optparse?围绕这两个库编写另一个包装器?说服系统管理员和用户(在大多数情况下只能启动应用程序)安装 argparse 反向端口?

【问题讨论】:

    标签: python argparse optparse


    【解决方案1】:

    我会坚持使用optparse,只要它提供您当前需要的功能(并期望将来需要)。

    optparse 工作得很好,只是不会进一步开发。它在 Python 3 中仍然可用,因此即使有一天您决定迁移到 Python 3,它也会继续工作。

    【讨论】:

    • 我并不真正了解 Python 中的弃用过程,但很高兴听到 optparse 不会在未来 那么 这么快消失。
    【解决方案2】:

    在您的程序中提供argparse.py 的副本,因为不需要安装该模块。从pypi.python.org/pypi/argparse 获取argparse.py 并将其放置在sys.path 中包含的某个位置就足够了。

    【讨论】:

      猜你喜欢
      • 2015-05-07
      • 2017-09-02
      • 2012-04-22
      • 2011-09-18
      • 2015-06-02
      • 2016-02-27
      • 2022-08-16
      • 2017-04-01
      相关资源
      最近更新 更多