Python Fireは、Googleが開発したライブラリで、任意のPythonオブジェクトから自動的にコマンドラインインターフェース(CLI)を生成することができます。これにより、PythonでCLIを簡単に作成することが可能となります。
インストール
Python Fireはpipを使用して簡単にインストールできます。
pip install fire
基本的な使用方法
Python Fireは、関数、クラス、モジュール、オブジェクト、辞書、リスト、タプルなど、任意のPythonオブジェクトに対して呼び出すことができます。以下に、関数とクラスにFireを呼び出す例を示します。
関数の例
import fire
def hello(name="World"):
return "Hello %s!" % name
if __name__ == '__main__':
fire.Fire(hello)
コマンドラインから次のように実行できます。
python hello.py # Hello World!
python hello.py --name=David # Hello David!
python hello.py --help # Shows usage information.
クラスの例
import fire
class Calculator(object):
"""A simple calculator class."""
def double(self, number):
return 2 * number
if __name__ == '__main__':
fire.Fire(Calculator)
コマンドラインから次のように実行できます。
python calculator.py double 10 # 20
python calculator.py double --number=15 # 30
詳細な使用方法やその他の機能については、Python Fire Guideを参照してください。
なぜFireと呼ばれるのか?
Fireを呼び出すと、あなたのコマンドが発火(実行)されるからです。
Python Fireは、既存のコードの探索や他人のコードをCLIに変換するのに役立ちます。また、PythonとBashの間を移行するのを容易にし、必要なモジュールと変数がすでにインポートされ、作成された状態でPython REPLを使用するのを容易にします。これらの特性により、Python FireはPythonコードの開発とデバッグに有用なツールとなっています。