Python:带有' print'的GUI功能关闭终端窗口后不再有效

时间:2017-09-02 12:41:46

标签: python linux ubuntu gtk

我有一个用于Ubuntu的Python GUI应用程序,它也会向终端打印消息。 GUI的退出'菜单如下:

def quit():
    print('exiting')
    Gtk.main_quit()

如果我在后台运行我的应用程序,并且在应用程序仍在运行时退出终端,则上述quit功能不会执行任何操作。但是,如果删除print语句,应用程序将按预期退出。

因此看起来print语句阻止了脚本的其余部分运行。我怎么能避免这个?

1 个答案:

答案 0 :(得分:1)

改为使用日志记录。

import logging

logging.basicConfig( filename='gui_app.log', level=logging.INFO, propogate=0 )

使用logging.info( "Exiting" )代替print语句,logging是监视应用程序的正确方法,不会中断控制流。