用来捕获输入参数。
一般使用形式如下:
argv = sys.argv[1:]
try:
opts, args = getopt.getopt(argv, "d:o", ["dataset=", "method-options=", ])
except getopt.GetoptError:
sys.exit()
其中,opts是元组组成的列表,用来存放那些键入的参数种带有-或者–的输入参数,其实这些才是我们要的东西,而那些不带有-或者–的输入参数存放在args中。
例子如下:
import sys
import getopt
opts, args = getopt.getopt(sys.argv[1:], "-h-i:",["help","input="])
print('The type of opts is :',type(opts))
print(opts)
for opt,value in opts:
print(f'The value of option {opt} is {value}\n')
print('The type of args is :',type(args))
print(args)
其中,–这种长参数和-短参数的区别应该就是–长参数是一种更为详细的补充罢了。
另外,有冒号和等号属于必须跟参数,没有的属于所谓的开关选项,不需要参数,但不知道开关选项是干什么用的?
还有,在开头的代码块例子中,前面的d:o和后面的中括号里面的内容有什么联系呢?(短参数对应长参数?我看有的顺序还颠倒了?)
另外,定义(终端键入?)命令行参数时,要先定义带’-'选项的参数,再定义没有‘-’的参数。