dataFrameViewer.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:dfViewer 作者: sterry24 项目源码 文件源码
def loadFile(self, filename):
        if filename.endswith('.xls') or filename.endswith('.xlsx'):
            df=pd.ExcelFile(filename)
            sheetnames=df.sheet_names
            dialog=ExcelFileDialog(filename,sheetnames,self)
            dialog.accepted.connect(self.loadExcel)
            dialog.show()
        else:
            table = QTableView()
            table.setAlternatingRowColors(True)
            model=DataFrameTableModel(filename=filename)
            model.trackDataChange.connect(self.trackChanges)
            table.setModel(model)
            ### Set some variables ###
            table.headers = table.horizontalHeader()
            table.vHeaders=table.verticalHeader()
            #### Set context menu for table headers ####
            table.headers.setContextMenuPolicy(Qt.CustomContextMenu)
            table.headers.customContextMenuRequested.connect(self.headerMenu)
            table.vHeaders.setContextMenuPolicy(Qt.CustomContextMenu)
            table.vHeaders.customContextMenuRequested.connect(self.vHeaderMenu)
            if model._filename.endswith('.csv'):
                df=pd.read_csv(model._filename)
                model.setDataFrame(df)
                self.tableTabWidget.addTab(table, QFileInfo(model._filename).fileName())
                self.tableTabWidget.setCurrentWidget(table)
            if model._filename.endswith('.txt'):
                delim = str(self.parseDelimiter(model._filename))
                if delim == ' ':
                    df=pd.read_csv(model._filename,delim_whitespace = True)
                else:
                    df=pd.read_csv(model._filename,sep=delim)
                model.setDataFrame(df)
                self.tableTabWidget.addTab(table, QFileInfo(model._filename).fileName())
                self.tableTabWidget.setCurrentWidget(table)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号