我有一个用于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退出。
答案 0 :(得分:0)
我今天遇到了同样的问题,我挖掘了Fire的源代码以了解如何解决该问题。
看看here,您会看到Fire在显示帮助时使用了“传呼机”的概念。通过PAGER环境变量指定它自己的一个或一个。如果您在脚本的开头插入以下语句:
os.environ["PAGER"] = "cat"
您将不必再执行CTRL + C或:q了。一种丑陋的解决方法,但暂时对我来说足够。