在PyQT中调用方法后保留DataFrame

时间:2019-01-28 00:51:06

标签: python-3.x pyqt5

我正在PyQT5中编写一个GUI,允许用户导入电子表格。在后台,GUI将电子表格中的数据转换为熊猫数据框。以下是相关功能:

  #add a menu
    def add_menu(self):
        menubar = self.menuBar()
        fileMenu = menubar.addMenu('&File')
        #Open a file
        openFile=QMenu('Open File',self)
        openFile = QAction('&Open a file', self)        
        openFile.setShortcut('Ctrl+O')
        openFile.setStatusTip('Open a file')
        openFile.triggered.connect(self.read_file)
        menubar.setNativeMenuBar(False) #needed for Mac OS

函数add_menu包括对read_file的调用:

def read_file(self):
    self.fileName=QFileDialog.getOpenFileName(self, 'Open file','\home',filter)
    df=pd.read_excel(self.fileName[0])
    avg=df['Returns'].mean()

我遇到的问题是,在调用df之后,变量avgread_file被销毁了。但是,我想在其他函数中使用df对象。我无法return df,因为connect行中的openFile.triggered.connect(self.read_file)不会传递熊猫数据框对象。

在调用df之后如何保存avgread_file?记忆吗?

0 个答案:

没有答案