我正在寻找一种有效的方法来编写可以使用连字符-单字母-空格-参数约定调用的python脚本(例如python script.py -f /filename -t type -n 27
,其中f
、、t
和n
是与选项类型相对应的单个字母,以及/filename
、type
和27
是它们的值)。我知道该sys
库及其sys.argv
功能是在调用之后获取以空格分隔的字符串的一种方式(请参阅带有参数的调用程序),但是当它们遵循上述约定时,是否有一种复杂的方法来处理这些字符串?
问问题
12143 次
1 回答
4
您需要 python 标准库中的argparse
模块。
argparse 模块包含一个ArgumentParser
类,您可以使用它来解析由sys.argv
使用示例:
import argparse
import sys
parser = argparse.ArgumentParser(description="Does some awesome things.")
parser.add_argument('message', type=str, help="pass a message into the script")
if __name__ == '__main__':
args = parser.parse_args(sys.argv[1:])
print args.message
有关更多详细信息,例如如何合并可选、默认和多个参数,请参阅文档。
于 2013-02-25T05:23:35.707 回答