[ Problems with closing and starting a Python program quickly ]
I have a small python/pyqt-program which functions fine the first time I run it. But if I close it and restart it quickly (in about 3 secs) this definition will give the wrong result. It runs fine without error but the if oktype will not return true even if its the exactly same file as first time I ran it! Has it anything to do with this code? Or is it higher up in my code, or maybe some sort of garbage-collection errors?
def fileChanged(fileIn, pubNotes, fileType): pubNotes.clear() fileType.clear() filename = str(fileIn.text()) foundtype = 0 oktype = '' okfiles = ('.max','.ma','.mb','.ni','.nk', '.psd','.ztl', '.tif', '.tiff') for ftype in okfiles: if filename.endswith(ftype): print('File: %s matches pattern %s') % (filename,ftype) foundtype = 1 print 'ftype er %s' % ftype oktype = ftype break if foundtype: print('File is of type %s') % oktype if oktype is '.psd': typeopt = ['Matte Paint','Texture paint'] for i in range(len(typeopt)): fileType.addItem(typeopt) if oktype is '.nk': typeopt = ['Comp', 'Precomp', 'Roto'] for i in range(len(typeopt)): fileType.addItem(typeopt[i]) if oktype is '.max': typeopt = ['Model'] for i in range(len(typeopt)): fileType.addItem(typeopt[i]) if oktype is '.tif': typeopt = ['Texture'] for i in range(len(typeopt)): fileType.addItem(typeopt[i]) #update comboBox_types here else: messageBox('File is not of known type, please drag other file') fileIn.clear
Yes! @TyrantWave and @reclosedev you are absolutely correct. I switched to using == instead of is and now it works like a charm! Thank you so much!