2015-11-02 47 views
1

我有一個GUI應用程序,其中包含五個python腳本。如何退出腳本而不是GUI應用程序

我已經在IO數據中發現一個錯誤,然後我想包含一個退出條件來退出python腳本並顯示QT消息,但保持GUI應用程序。

腳本

 if len(Numero_Unidades) != 1: 
      quit() 
     else: 
      pass 

     block 

之一,但它退出蟒蛇

,我想留在GUI應用程序,保持主窗口打開。

if self.ui.radioButton3.isChecked()== True: 
     myscript.myscript() 
     QtGui.QMessageBox.information(self,'message') 

我該怎麼做?

+0

您是否知道python的[module](https://docs.python.org/2/tutorial/modules.html)概念? –

+0

是的,我是。腳本myscript被導入GUI應用程序 – kamome

+0

只有一個應用程序正在運行。如果你退出,你顯然沒有GUI。 –

回答

0

可以啓動另一個Python程序來啓動你的腳本

通過使用os.system("script.py")

0

假設quit()功能是內置quit,就可以猴子打補丁,並引發一個錯誤,而不是戒菸整個應用程序:

import myscript 
import __builtin__ 

def myquit(): 
    raise RuntimeError('script quit!') 

__builtin__.quit = myquit 

try: 
    myscript.myscript() 
except RuntimeError as exception: 
    print(exception) 
else: 
    print('keep calm and carry on') 
+0

它看起來不錯。謝謝 – kamome