我正在尝试使用optparse,但我遇到了一个问题。
我的脚本用法是:script <filename>
我不打算添加任何选项字符串,例如:script -f <filename>或script --file <filename>
有什么方法可以选择不传递参数字符串吗?或者有没有什么方法可以让用户这样做:
script -f <filename>
script --filename <filename>
script <filename>以上所有的结果都是一样的吗?
我知道使用argv[1]可以很容易地做到这一点,但问题是我可能需要稍后在项目中添加命令行支持,并且在那时候我不想到处添加optparse支持。这就是我想使用optparse的原因。
发布于 2010-06-01 16:05:35
import optparse
parser = optparse.OptionParser()
parser.add_option("-f", "--filename", metavar="FILE", dest="input_file", action="append")
options, args = parser.parse_args()
if options.input_file:
args.extend(options.input_file)
for arg in args:
process_file(arg)这将简单地使用args作为输入文件的列表,但是它会将作为-f或--filename参数传递的文件名附加到args,这样您就可以获得所有这些文件。
https://stackoverflow.com/questions/2947993
复制相似问题