有没有办法让下面的工作?我正在寻找的是根据另一个选项的值获得一个选项的值。
import optparse
parser = optparse.OptionParser()
parser.add_option("--file-name", default="/foo/bar", dest="file_name")
parser.add_option("--file-action",
default="cp %s /bar/baz" % (options.file_name),
dest="fileaction")
options, args = parser.parse_args()
显然,就目前而言,它是行不通的,因为
赋值前引用的局部变量'options'
两者兼而有之:
parser.add_option("--file-name", dest="file_name")
parser.add_option("--file-action", dest="file_action")
你可以使用简单的逻辑。
if options.file_name:
#do code relating to file_action
甚至
if options.file_action and not options.file_name:
raise ValueError("No Filename specified")
# do your code here.
我是一名优秀的程序员,十分优秀!