单击命令后如何运行python函数? [重复]

问题描述 投票:0回答:1

我正在从模块运行click命令后尝试运行功能。但是执行click命令后该模块存在。tool.py模块是:

import click


@click.command()
@click.option('--url', prompt='RPC endpoint', help='URI to the RPC endpoint')
def init(url):

    print(url)


def main():
    print('in main function')


init()

main()

运行模块的命令是python tool.py。输出仅给出url。如何通过调用模块同时运行命令和功能?谢谢

python command-line-interface python-click
1个回答
0
投票

我可以在@ user5214530的帮助下设计以下解决方案:

import click

import atexit


@click.command()
@click.option('--url', prompt='RPC endpoint', help='URI to the RPC endpoint')
def init(url):

    print(url)

@atexit.register
def main():
    print('in main function')


init()
main()

我不确定是否还有另一种更健壮的方法来执行此操作。

© www.soinside.com 2019 - 2024. All rights reserved.