我有用于python fire的简单代码,由于某种原因,我在使用--help标志时都会卡住。
import fire
def double(number):
"""A simple function."""
return 2 * number
if __name__ == '__main__':
fire.Fire(double)
我跑步时
$ pipenv run python3 ./scripts/test.py --help
我得到了帮助,但CLI也挂起,我必须按ctrl + C退出。
今天我遇到了同样的问题,我挖掘了Fire的源代码以查看如何解决。
[如果您查看here,您会看到在显示帮助时,Fire使用“传呼机”的概念。通过PAGER环境变量指定它自己的一个或一个。如果在脚本开头插入以下语句:
os.environ["PAGER"] = "cat"
您将不再需要执行CTRL + C或:q了。一种丑陋的解决方法,但暂时对我来说足够。