def exportToFile(self, fileName = None): if not fileName: fileName = util.getSaveFileName(self) if not fileName: return fileLines = [] for box in self.textBox.values(): try: try: _, unit = util.separateNumberUnit(box.text()) value = util.convertUnitsNumberToString(self.valueFromTextBox[box], box.unit, unit) except (ValueError, KeyError): value = box.text() fileLines.append(box.objectName() + ':' + value) # text box except AttributeError: fileLines.append(box.objectName() + ':' + box.currentText()) # combo box with open(fileName, 'w') as f: f.write('\n'.join(sorted(fileLines)))