ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
| argparse模块 | | | --- | --- | ``` #!python3 #-*- coding=UTF-8 -*- ############################# #用于解析命令行参数,编写用户友好的命令行界面,该模块还会自动生成帮助信息,并在所给参数无效时报错 ############################# import argparse #参数 #其中对象参数可不填,全为空,通过add_argument添加 #@param [prog = None] [程序名] #@param [usage = '%(prog)s [options]'] [指定生成用法信息] #@param [description = None] [- help时显示的开始文字] #@param [epilog = None] [- help时显示的结尾文字] #@param [parents = []] [-若与其他参数的一些内容一样,可以继承] #@param [formatter_class = argparse.HelpFormatter] [- 自定义帮助信息的格式] #@param [prefix_chars = '-'] [- 命令的前缀,默认是‘-’] #@param [fromfile_prefix_chars] [ - 命令行参数从文件中读取] #@param [argument_default = None] [- 设置一个全局的选项缺省值,一般每个选项单独设置] #@param [conflict_handler = 'error'] [- 定义两个add_argument中添加的选项名字发生冲突时怎么处理,默认处理是抛出异常] #@param [add_help = True] [- 是否增加-h/--help选项,默认是True] parser = argparse.ArgumentParser(prog=None, usage=None, epilog=None, parents=[], formatter_class=argparse.HelpFormatter, prefix_chars='-', fromfile_prefix_chars=None,argument_default=None, conflict_handler='error', add_help=True) #参数 #@param [echo] [程序名,要执行的命令] #@param [nargs] [指定这个参数后面的value有多少个,默认为1,nargs还可以'*'用来表示如果有该位置参数输入的话,之后所有的输入都将作为该位置参数的值;‘+’表示读取至少1个该位置参数。'?'表示该位置参数要么没有,要么就只要一个] #@param [require] [参数为必须] #@param [type] [参数的类型] #@param [choices] [参数的可选范围] #@param [action] [表示值赋予键的方式,这里用到的是bool类型,action意思是当读取的参数中出现指定参数的时候的行为] #@param [default] [参数的默认值] #@param [help] [参数的帮助信息] #@param [echo] [程序名,要执行的命令] parser.add_argument('echo', nargs = 2, help = 'The words to') # add_argument()指定程序可以接受的命令行选项 parser.add_argument('-v', '--version', require = True, type = int, choices = range(1, 41), default = 1, help = 'version') parser.add_argument('-l', '--level', type = list, choices = list('LMQH'), action = 'store_true' default = 1, help = 'version') args = parser.parse_args() # parse_args()从指定的选项中返回一些数据 print(args) print(args.echo) ```