blank page

プログラミングなどについて書きます

Pythonのdocoptっていうライブラリが良さ

こんにちは〜〜〜, 筋肉痛中の@u_chi_ha_ra_です.

某韻を踏むアプリケーションを作っている際にコマンドライン引数の処理をなんかいい感じにやりたいな〜〜〜みたいな気持ちで適当に調べていたら良さげなものがあったので一応紹介です!w
韻を踏むやつ↓ github.com

main

github.com docopt—language for description of command-line interfaces
これです.(今更)

実行環境

OS : 
     Manjaro 17.0.2
version :
     pyenv 1.1.2-2
     python3.6

インストー

pip install docopt

でインストール.

使ってみる

__doc__ = """
Usage:
    hoge.py [-h] [--show] [--hello] N

Options:
    -h --help   show this help message 
    --show      show result
    --hello     Hello World
"""

from docopt import docopt

def main():
    args = docopt(__doc__)
    n = args["N"]
    
    if args["--show"]:
        print(n)
    if args["--hello"]:
        print("Hello World")

if __name__ == "__main__":
    main()
$ python hoge.py --hello
Hello World

$ python hoge.py --show hoge
hoge

$ python hoge.py
Usage:
    hoge.py [-h] [--show] [--hello] N

こんな感じで使えます.
使いやすい〜〜!

だいぶポ!wっとかけていい感じです

公式のUsageとかみるとわかりやすいはずです. 以上です.

最後

pythonCLIアプリケーションを書くときめっちゃ便利そうだなあと思いました.

python力をあげたいのでpythonCLIの何かをじゃんじゃん書いていきたいです ><

(ここで言うpythonはすべてpython3のことです)