我想要一种更紧凑、更可扩展的方式来使用命令行args来为python函数提供数据,以下是我所拥有的:
def getRelevant (number = 5, sortBy = "Change"):
number, sortBy = int(number), sortBy
relevant = ...
return relevant
if __name__ == "__main__":
if len(sys.argv) == 3:
print(getRelevant(sys.argv[1], sys.argv[2]))
elif len(sys.argv) == 2:
print(getRelevant(sys.argv[1]))
else:
print(getRelevant())
它起作用了。但我不喜欢这个条件,有没有办法让它更简单
argparse
当然是您想要学习的命令行选项和参数工具-它是所有开发人员都应该知道的工具的一部分(使用logging
和pdb
)也就是说,对于这种情况,您也可以非常简单地解决问题,而无需
argparse
:您可以尝试使用argparse或Typer
argparse:https://docs.python.org/3/library/argparse.html
打字机:https://typer.tiangolo.com/
Argparse应该这样做。它功能丰富、灵活。 就您的情况而言,以下内容起到了作用:
相关问题 更多 >
编程相关推荐