如果2个条件为真,则打开文件,否则打印

时间:2013-05-26 23:13:54

标签: python if-statement python-2.7 optparse

我正在尝试使用一段python(2.7)代码。代码如下:

import os

def parseOptions():

    import optparse
    parser = optparse.OptionParser(usage= '-h')
    parser.add_option('-t', '--type', \
                      choices= ('Warning', 'Error', 'Information', 'All'), \
                      help= 'The type of error',
                      default= 'Warning')
    parser.add_option('-g', '--goback', \
                      type= 'int')
    (options, args) = parser.parse_args()
    return options

options = parseOptions()

if options.type=='All' and options.goback=='24':
    os.startfile('logfile.htm')

else: 
    print
    print 'Type =', options.type,
    print
    print 'Go Back =', options.goback,'hours'
    print

我的问题是if语句,它特别需要这两个选项是那些确切的输入,它应该打开名为lofile.htm的文件

但此刻它只是打印而不打开文件。

如果我删除了'和options.goback'函数只保留'如果options.type'它会打开文件。但如果我只有options.goback部分,它也不起作用。

所以我的问题在于' options.goback ==' 24':'我只是不确定如何纠正它。因为目前论证打印得很好,它只是不知道它是什么数字。

任何帮助将不胜感激!

- M

1 个答案:

答案 0 :(得分:4)

options.goback是一个int,所以将'24'替换为24