decopt库

Decopt库是专门用于处理命令行参数,这样你就不用在代码里自己编写参数来处理程序的`**kwargs``了。

库用起来还是很简单的:

"""OH HTML to Markdown Converter

Usage:
  ohhtml2md.py (src) <source> (out) <object> [--omit_hyperlink=<n>] [--omit_image=<m>]
  ohhtml2md.py (-h | --help)
  ohhtml2md.py --version

Options:
  -h --help         Show this screen.
  --version         Show version.
  --omit_hyperlink=<n>  Omit hyperlinks. [default: True]
  --omit_image=<n>      Omit images. [default: True]

"""
from docopt import docopt

if __name__ == '__main__':
    arguments = docopt(__doc__, version='Ohhtml2md 1.0 beta')
    print (arguments)

简单记一下我的心得:

  • ()是是必选参数;[]是可选参数;|是互斥参数,就是用|连接的参数只能选一个;...是重复参数,可以有个,比如说多个文件名。
  • <>--其实不是必须的,我这么写是为了区别出指令和参数,纯属个人爱好。
  • --omit_hyperlink=<n>后面的=<n>说明了这个参数可以赋值,否则参数只能表示存不存在。
  • Options里可以为参数设置默认值。

推荐阅读更多精彩内容

  • pdf下载地址:Java面试宝典 第一章内容介绍 20 第二章JavaSE基础 21 一、Java面向对象 21 ...
    王震阳阅读 77,523评论 25 510
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 74,866评论 12 116
  • 1.对缺省参数的理解。给出代码 缺省参数在python中是与函数绑定在一起的。也就是说,一个函数中定义了一个缺省参...
    晓可加油阅读 1,447评论 0 27
  • 我在加拿大上学时有个留学生同学,我们以姐妹相称,在一起相处过两年。 上学期间我帮助过她,毕业时觉得她对我冷若冰霜,...
    蓝柿阅读 108评论 5 5
  • 这个世界变得越来越喧嚣,独处的渴望,正在变得愈加迫切,如果你不热爱独处,那你也许并不喜欢自由。但即使拥有独处的时间...
    猛虎哥阅读 38评论 0 1