Python 正在跳过QPixmap行

Python 正在跳过QPixmap行,python,pyqt4,qpixmap,Python,Pyqt4,Qpixmap,我有以下代码: def run(self): filename = QtGui.QFileDialog.getSaveFileName(self, "Save file", "", ".inp") if filename == "": pass elif filename != "": nfile = open(filename, 'w') self.pixmap1 = QtG

我有以下代码:

def run(self):
        filename = QtGui.QFileDialog.getSaveFileName(self, "Save file", "", ".inp")
        if filename == "":
            pass
        elif filename != "":
            nfile = open(filename, 'w')
            self.pixmap1 = QtGui.QPixmap('yellow.jpg')
            self.canvas1.setPixmap(self.pixmap1)
            self.cursor.movePosition(self.cursor.Start, self.cursor.MoveAnchor)
            self.cursor.movePosition(self.cursor.End, self.cursor.KeepAnchor)
            text = self.cursor.selection()
            text1 = text.toPlainText()
            nfile.write(text1)
            nfile.close()
            fileInfo = QtCore.QFileInfo(filename)
            name = fileInfo.baseName()

            import os
            os.system("rungms {}.inp 13-64 {} {} {}.out".format(name, self.cores_val, self.clusters_val, name))

            from itertools import islice
            import sys

            with open("{}.out".format(name)) as searchfile:
                for line in searchfile:
                    if 'TERMINATED NORMALLY' in line:
                        self.pixmap1 = QtGui.QPixmap('green.jpg')
                        self.canvas1.setPixmap(self.pixmap1)
                    elif 'job aborted' in line:
                        self.pixmap1 = QtGui.QPixmap('red.jpg')
                        self.canvas1.setPixmap(self.pixmap1)
                    else:
                        pass
        else:
            pass
我的问题是,在保存我的文件后,没有读取涉及
QPixmap('yellow.jpg')
的两行代码。但是,如果我将这两行移到代码的第一行和第二行之间(即在filename=QtGui…)之前),那么它们就可以工作了


有人能给我解释一下为什么会这样吗?

你怎么知道,他们没有被阅读?您是否已验证
filename
不是空的?附带说明:您不需要
elif文件名!="": ... 否则:通过,因为如果
文件名==”
为False,则elif路径始终为True。谢谢,x平方。我知道它们没有被读取,因为图像没有被插入self.canvas1中,而在代码后面这些行的其他实例中,图像(绿色和红色)在我运行程序时被插入。此外,当我在文件名前写下相应的行时,我的黄色图像会发生变化。。。def运行后(自我):我希望这是有意义的。