def Sort(self):
indCB = self.comboBox.currentIndex() # получение индекса выбранного параметра ComboBox
if indCB == 1 or indCB == 2 or indCB == 6: # индексы числовых параметров ComboBox
column_index = self.tableWidget.horizontalHeader().logicalIndex(indCB - 1) # индекс столбика с числовым значением
for row in range(self.tableWidget.rowCount()):
item = self.tableWidget.item(row, column_index) # получение значения из ячейки
item_int = int(item.text()) # переводим в целочисленное значение
item.setData(QtCore.Qt.EditRole, item_int) # присваеваем новое значение старому
self.tableWidget.sortItems(column_index) # сортируем с помощью встроенной функции
if indCB == 3 or indCB == 4 or indCB == 5: # дальнейший код работает с текстовыми значениями и, соответственно, работает корректно
column_index = self.tableWidget.horizontalHeader().logicalIndex(indCB - 1)
self.tableWidget.sortItems(column_index, QtCore.Qt.AscendingOrder)