Я по ходу забанил себя в гугле.
Кароче вот решение.
import PyQt5.QtWidgets as qtw
import dialog
class blablabla(qtw.QDialog, dialog.Ui_dialog):# dialog.Ui_dialog тупа описание интерфайса диалога
...
def add(self):
self.table.insertRow(self.table.rowCount())
self.table.setItem(self.table.rowCount()-1, 0, qtw.QTableWidgetItem("Put smth here"))
self.table.setItem(self.table.rowCount()-1, 1, qtw.QTableWidgetItem("Put smth here"))
...
btn = qtw.QPushButton("Remove")
self.table.setCellWidget(self.table.rowCount()-1, self.table.columnCount()-1, btn)
btn.clicked.connect(self.removecurrentrow)
def removecurrentrow(self):
button = self.sender()
if button:
row = self.table.indexAt(button.pos()).row()
self.table.removeRow(row)