ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Pythonで楽な世界へコミュのコマンドラインツールにはoptparse

  • mixiチェック
  • このエントリーをはてなブックマークに追加

コマンドラインツールを作るときに、オプションを渡したいですよね?

初めては、sys.argvを使いました。
これは、コマンドラインの全てを配列に返してくれます。
そのあと、自分で必要な情報をパースしていました。

もっといい方法があるだろうと思いながら、getoptsを出会い、多少、パースが楽になりました。(この方法をつかむまでに時間がかかったけど)
http://www.python.jp/doc/2.4/lib/module-getopt.html

それで、今は、optparseを通常に使っています。
getoptよりかなりコマンドラインオプションのパースや定義が楽になりました。

まだ、sys.argvやgetoptを使っているなら、ぜひ見てください。

from optparse import OptionParser

[...]
parser = OptionParser()
parser.add_option("-f", "--file", dest="filename",
help="write report to FILE", metavar="FILE")
parser.add_option("-q", "--quiet",
action="store_false", dest="verbose", default=True,
help="don't print status messages to stdout")

(options, args) = parser.parse_args()

ここでコマンドラインで渡されて情報がdestで定義した変数名に入ります。
この場合は:

options.filename
options.verbose

に入ります。

さらに好きなものが、ヘルプ出力の自動作成。

add_optionでhelpを定義したテクストは、ユーザが-hを渡すと自動的に表示されます。

usage: <yourscript> [options]

options:
-h, --help show this help message and exit
-f FILE, --file=FILE write report to FILE
-q, --quiet don't print status messages to stdout

自分で表示したい場合は:

parser.print_help()

が出来ます。

便利でしょう。










http://www.python.jp/doc/2.4/lib/module-optparse.html

コメント(0)

mixiユーザー
ログインしてコメントしよう!

Pythonで楽な世界へ 更新情報

Pythonで楽な世界へのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング