转载
大致意思就是:有时间一个脚本只需要解析所有命令行参数中的一小部分,剩下的命令行参数给两一个脚本或者程序。在这种情况下,parse_known_args()就很有用。它很像parse_args(),但是它在接受到多余的命令行参数时不报错。相反的,返回一个tuple类型的命名空间和一个保存着余下的命令行字符的list。
举个栗子,新建一个test.py文件,在文件中写入如下代码
1
2
3
4
5
6
7
8
9
10
11
|
import argparse parser = argparse.ArgumentParser() parser.add_argument( '--flag_int' , type = float , default = 0.01 , help = 'flag_int.' ) FLAGS, unparsed = parser.parse_known_args() print (FLAGS) print (unparsed) |
结果如下:
1
2
3
|
$ python prog.py - - flag_int 0.02 - - double 0.03 a 1 Namespace(flag_int = 0.02 ) [ '--double' , '0.03' , 'a' , '1' ] |