3

我目前正在我的 python 脚本中实现命令行参数,并希望尽可能地成为 pythonic。因此,我正在使用 argparse,目前正在阅读文档教程。

我不清楚什么,因为我已经def main(): def a_function():并且现在必须在argparse某处添加相关的东西,它去哪里了?有 PEP 指南吗?

我假设它超出了main(),因为参数在函数和主函数中使用,但又一次没有提到它。

对不起,我还在学习,想正确地学习它。

tl;博士。我是菜鸟,不知道在哪里放置argparse代码

4

1 回答 1

4

没有 PEP 指南,也可能没有共同的模式。我更喜欢为我的应用程序使用一个类,并将我的选项解析代码放在一个方法中。我传入参数,它允许调用者要么发送 sys.argv,要么传入它想要的任何东西(例如:你可以在测试时传入自定义的参数列表)

class App(object):
    def __init__(self, args):
        ...
        self.args = self._parse_arguments(args)
        ...

    def _parse_arguments(args):
        parser = argparse.ArgumentParser()
        ...
        result = parser.parse_args(args)
        return result
于 2014-09-29T11:26:43.163 回答