‘’’
import sys
from optparse import OptionParser
def prepare_optparser():
usage = “usage: %prog -i train_file_name -t test_file_name”
description = “Deep learning with self-attention.”
optparser = OptionParser(version="%prog v1.00", description=description, usage=usage, add_help_option=False)
optparser.add_option("-h","–help",action=“help”,help=“Show this help message and exit.”)
optparser.add_option("-i","–train_file",dest=“train_file”,type=“string”,
help=“Train_file_name”)
optparser.add_option("-t","–test_file",dest=“test_file”,type=“string”,
help=“Test_file_name”)
(options,args) = optparser.parse_args()
return(options)
opts=prepare_optparser() #ectract the corresponding parameter
train_file = opts.train_file #extract the value
test_file = opts.test_file
print(“This is the input train filename:”, train_file)
print(“This is the input test filename:”, test_file)
‘’’
#___________ all kinds of parameter documentary-----------------------
- 常用参数说明
dest 存储的变量. Could be extracted by the name
default 默认值
help 帮助信息
action 参数讲解
- action = “store”
(1)如果输入的参数fakeArgs中存在"-v",则verbose返回的值为fakeArgs中的紧跟’-v’的数,
#即"good luck to you"。这也正好options中的键值对应,剩下配对的参数都传给了args。请见以下代码
‘’‘
optParser.add_option("-f","–file",action = “store”,type = “string”,dest = “fileName”)
optParser.add_option("-v","–vison", action=“store”, dest=“verbose”)
fakeArgs = [’-f’,‘file.txt’,’-v’,‘good luck to you’, ‘arg2’, ‘arge’]
options, args = optParser.parse_args(fakeArgs)
print (optParse.verbose)
print (options)
print (args)
‘’‘
(2) 如果输入的参数不存在“-v”, 则 version 的返回值为None - action = “store_true”
(1)fakeArgs中存在’-v’,verbose将会返回True而不是"good luck to you"。意思就是说verbose的值与’-v’
#的后一位无关,只与’-v’存不存在就关
(2)fakeArg中不存在‘-v’, verbose则同样返回空 - action = “store_false”
(1)这与action="store_true"类似,只有其中有参数’-v’存在,则verbose的值为False,如果’-v’不存在,那么verbose的值为None