1
#
!/usr/bin/env python3.7
2
#
-*- coding:utf-8 -*-
3
#
Author: Lancer 2019-09-02 10:07:21
4
5
import
sys,getopt
6
7
def
usage():
8
print
(
"
usage call
"
)
9
10
def
main():
11
try
:
12
opts, args = getopt.getopt(sys.argv[1:],
"
ho:v
"
, [
"
help
"
,
"
output=
"
])
13
print
(sys.argv[1
:])
14
except
getopt.GetoptError as err:
15
print
(str(err))
#
will print something like "option -a not recognized"
16
usage()
17
sys.exit(2
)
18
output =
None
19
verbose =
False
20
for
o, a
in
opts:
21
if
o ==
"
-v
"
:
22
verbose =
True
23
elif
o
in
(
"
-h
"
,
"
--help
"
):
24
usage()
25
sys.exit()
26
elif
o
in
(
"
-o
"
,
"
--output
"
):
27
output =
a
28
else
:
29
assert
False,
"
unhandled option
"
30
31
if
__name__
==
"
__main__
"
:
32
main()
getopt.getopt 方法用于解析命令行参数列表,语法格式如下:
getopt
.
getopt
(
args
,
options
[,
long_options
])
方法参数说明:
-
args : 要解析的命令行参数列表。
-
options : 以字符串的格式定义, options 后的冒号 : 表示如果设置该选项,必须有附加的参数,否则就不附加参数。
-
long_options : 以列表的格式定义, long_options 后的等号 = 表示该选项必须有附加的参数,不带冒号表示该选项不附加参数。
-
该方法返回值由两个元素组成: 第一个是 (option, value) 元组的列表。 第二个是参数列表,包含那些没有 - 或 -- 的参数。

