python-fire

Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.

Github星跟蹤圖

Python Fire PyPI

Python Fire is a library for automatically generating command line interfaces
(CLIs) from absolutely any Python object.

  • Python Fire is a simple way to create a CLI in Python. (docs/benefits.md#simple-cli)
  • Python Fire is a helpful tool for developing and debugging Python code. (docs/benefits.md#debugging)
  • Python Fire helps with exploring existing code or turning other people's code
    into a CLI. (docs/benefits.md#exploring)
  • Python Fire makes transitioning between Bash and Python easier. (docs/benefits.md#bash)
  • Python Fire makes using a Python REPL easier by setting up the REPL with the
    modules and variables you'll need already imported and created. (docs/benefits.md#repl)

Installation

To install Python Fire with pip, run: pip install fire

To install Python Fire with conda, run: conda install fire -c conda-forge

To install Python Fire from source, first clone the repository and then run:
python setup.py install

Basic Usage

You can call Fire on any Python object:
functions, classes, modules, objects, dictionaries, lists, tuples, etc.
They all work!

Here's an example of calling Fire on a function.

import fire

def hello(name="World"):
  return "Hello %s!" % name

if __name__ == '__main__':
  fire.Fire(hello)

Then, from the command line, you can run:

python hello.py  # Hello World!
python hello.py --name=David  # Hello David!
python hello.py --help  # Shows usage information.

Here's an example of calling Fire on a class.

import fire

class Calculator(object):
  """A simple calculator class."""

  def double(self, number):
    return 2 * number

if __name__ == '__main__':
  fire.Fire(Calculator)

Then, from the command line, you can run:

python calculator.py double 10  # 20
python calculator.py double --number=15  # 30

To learn how Fire behaves on functions, objects, dicts, lists, etc, and to learn
about Fire's other features, see the Using a Fire CLI page.

For additional examples, see The Python Fire Guide.

Why is it called Fire?

When you call Fire, it fires off (executes) your command.

Where can I learn more?

Please see The Python Fire Guide.

Reference, Setup, Command, Notes, :------, :------------------, :---------, install, pip install fire, Creating a CLI, Command, Notes, :--------------, :---------------------, :---------, import, import fire, Call, fire.Fire(), Turns the current module into a Fire CLI., Call, fire.Fire(component), Turns component into a Fire CLI.

Using a CLI, Command, Notes
:----------------------------------------------, :--------------------------------------, :----
Help, command --help or command -- --help, REPL, command -- --interactive, Enters interactive mode.
Separator, command -- --separator=X, Sets the separator to X. The default separator is -.
Completion, command -- --completion [shell], Generates a completion script for the CLI.
Trace, command -- --trace, Gets a Fire trace for the command.
Verbose, command -- --verbose, Note that these flags are separated from the Fire command by an isolated --.

License

Licensed under the
Apache 2.0 License.

Disclaimer

This is not an official Google product.

主要指標

概覽
名稱與所有者google/python-fire
主編程語言Python
編程語言Python (語言數: 1)
平台
許可證Other
所有者活动
創建於2017-02-21 21:35:07
推送於2025-06-01 15:05:28
最后一次提交2025-06-01 10:55:56
發布數12
最新版本名稱v0.7.0 (發布於 )
第一版名稱v0.1.0 (發布於 2017-03-29 13:19:49)
用户参与
星數27.7k
關注者數367
派生數1.5k
提交數344
已啟用問題?
問題數331
打開的問題數132
拉請求數126
打開的拉請求數30
關閉的拉請求數103
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?