大致意思就是:有时间一个脚本只需要解析所有命令行参数中的一小部分,剩下的命令行参数给两一个脚本或者程序。在这种情况下,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'
]
|
转载。原文:https://www.cnblogs.com/xlqtlhx/p/8243592.html