Python 3.x 如何从PyQt5中显示的excel文件中删除数据并刷新它
我的数据库应用程序使用Pandas库。我可以将excel文件显示到我的tableView中,但任何时候我都可以从大型机中删除数据并尝试刷新tableView。这给了我一个关键的错误 我试图让它显示刷新的表。我试图删除用户请求的行。因为我输出了信息,所以当它下降时它会工作,但是tableView本身不会刷新,并且会给出一个错误Python 3.x 如何从PyQt5中显示的excel文件中删除数据并刷新它,python-3.x,pandas,pyqt5,Python 3.x,Pandas,Pyqt5,我的数据库应用程序使用Pandas库。我可以将excel文件显示到我的tableView中,但任何时候我都可以从大型机中删除数据并尝试刷新tableView。这给了我一个关键的错误 我试图让它显示刷新的表。我试图删除用户请求的行。因为我输出了信息,所以当它下降时它会工作,但是tableView本身不会刷新,并且会给出一个错误 df=pd.read\u excel(“文件名”) 模型=PandaModel(df) self.tableView.setModel(model) self.tableV
df=pd.read\u excel(“文件名”)
模型=PandaModel(df)
self.tableView.setModel(model)
self.tableView.resizeColumnsToContents()的大小
def DeletePlayer(self):
全球测向
choose=self.removePlayerEdit.text()
如果(选择==“0”):
df=df.drop([0])
打印(“已删除播放器”)
打印(df)
在实现模型时,不应直接访问存储数据的元素(dataframe),因为如果修改它,模型将不知道会产生什么问题,相反,您应该创建修改内部数据的方法,但将这些方法用作将通知模型更改的beginRemoveRows和endRemoveColumns
def removeColumn(self, col):
if 0 <= col < self.columnCount():
self.beginRemoveRows(QtCore.QModelIndex(), col, col)
self._df.drop(
self._df.columns[[col]], axis=1, inplace=True
)
self._df.reset_index(inplace=True, drop=True)
self.endRemoveColumns()
def removeColumn(self,col):
如果0,我希望你会回应,因为我使用了你的模型。谢谢,这很有效。
def removeColumn(self, col):
if 0 <= col < self.columnCount():
self.beginRemoveRows(QtCore.QModelIndex(), col, col)
self._df.drop(
self._df.columns[[col]], axis=1, inplace=True
)
self._df.reset_index(inplace=True, drop=True)
self.endRemoveColumns()