A =一个脚本,其结构由命令行调用,其中包含由python argparse库内部解析的选项。 B =另一个应调用A内部函数的脚本。
我相信在B中导入A是我需要的东西,但它返回了我的使用选项,然后退出python解释器。
有没有办法保存A并将其导入B传递给args?或者我应该重写避免使用解析器吗?
答案 0 :(得分:8)
在脚本A中,在解析参数和执行A作业之前检查您是否是“主脚本”,否则当您只需要将A用作库时,也会运行它。
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("-k", dest = "foo", action='store_true')
args = parser.parse_args()
# do things...