python命令行界面在哪_python – 具有基本选项和子命令的命令行界面设计

我正在尝试为我正在编写的工具开发命令行界面.我在类似于Fabric的fab工具的界面和svn的命令行工具之间徘徊.

fab的用法信息:

Usage: fab [options] [:arg1,arg2=val2,host=foo,hosts='h1;h2',...] ...

svn的用法信息:

usage: svn [options] [args]

请注意,svn还支持两个选项–version和–quiet(至少我正在使用的那个).

我的问题是:

> fab的cli(具有多个命令,每个命令都可以有参数)在命令行工具中设计常见吗?对我来说,svn工具的cli似乎更常用(但不确定).

>使用plac(或argparse)直接实现fab的cli会不会很简单?

>如果我决定使用svn的cli,可以使用plac实现吗?我喜欢plac,虽然我还没有弄清楚如何直接向工具添加选项,而不是子命令.它绝对可以使用argparse实现.

P.S.:fab的cli吸引我的唯一原因是,人们可以一步完成多项任务,但是易于实施是我的主要关注点

解决方法:

>颠覆的方式更标准.

>可能不是.

>你可以用手斧切黄油.

如果您想简化文档和使用,请使用SVN的方式.我可以看出为什么fab的方式似乎很吸引人,这对程序员来说是合乎逻辑的.但它实际上很复杂并且让用户搞砸了.

Plac看起来很酷,但你需要安装它.你的用户也是.

在软件工程方面,我喜欢遵循一个简单的规则:

保持简单和标准,在您真正需要时使用尖端技术.

应尽可能实现逆向兼容性.

然而,你只是鬼混,不打算分发你的工作,然后继续,flab的方式和使用flac;).

标签:python,command-line,argparse

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值