在 python 裡面其實已經有些 build-in module 可以用 ( argparse ),不過說真的,這 module 不得我心,寫起來覺得累贅,有點麻煩。改個小地方就要重寫一部分,加上一個參數,就會增加不少行數。
呼!這樣我寫完就下班了,人生苦短啊!
所以我就開始找相關的 module,竟然有個很方便的 module - docopt (PyCon UK 2012)。
不廢話,看個影片:
很美吧!簡潔有力,人生是彩色的啊!
作者很厲害把註解直接拿來做 parser 所需要的 patten,順便拿來當 help file。然後給你個dictionary 然後就打完收工。
這樣就完了嘛?還沒,不用急著開 terminal,現在是什麼時代,一定有提供web的試用版本(話說正式版也是免費的)。
http://try.docopt.org/
Installation:
GitHub: https://github.com/docopt/docopt
直接用 pip 來安裝
(env) $ pip install docopt
其實不要以為只有 python 有這些東西,其實 Ruby, PHP, Lua, CoffeeScript 都已經有移植的版本!
一年多就有四個移植的版本,真是有趣啊!
這也就是 opensource 的本質與好處吧!
歡迎大家互相交流! :)