perlでいうGetopt::Long のようなものはgetoptでおこなえる。が、pythonにはさらにoptparseなるものがあるらしいので、今回そっちを使ってコマンドをつくってみた。
6.21 optparse -- より強力なコマンドラインオプション解析器
optparse モジュールは、getopt よりも簡便で、柔軟性に富み、 かつ強力なコマンドライン解析ライブラリです。 optparse では、より明快なスタイルのコマンドライン解析手法、 すなわちOptionParser のインスタンスを作成してオプションを 追加してゆき、そのインスタンスでコマンドラインを解析するという手法を とっています。optparse を使うと、GNU/POSIX 構文でオプションを 指定できるだけでなく、使用法やヘルプメッセージの生成も行えます。
オプションとヘルプ用の情報を一緒にaddする。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | #!/usr/bin/python import sys, re from optparse import OptionParser parser = OptionParser() parser.add_option("-i", "--input", dest="input", help="read from MOL2 FILE", metavar="FILE") parser.add_option("-o", "--output", dest="output", help="write to GAMESS INPUT", metavar="FILE") parser.add_option("-t", "--type", dest="type", help="select calcuiation type", metavar="TYPE") if __name__ == "__main__": (options, args) = parser.parse_args() |
-hでヘルプが出力される。
$ ./test.py -h Usage: test.py [options] Options: -h, --help show this help message and exit -i FILE, --input=FILE read from MOL2 FILE -o FILE, --output=FILE write to GAMESS INPUT -t TYPE, --type=TYPE select calcuiation type