我有一个用于Ubuntu的Python GUI应用程序,它也会向终端打印消息。 GUI的退出'菜单如下:
def quit():
print('exiting')
Gtk.main_quit()
如果我在后台运行我的应用程序,并且在应用程序仍在运行时退出终端,则上述quit
功能不会执行任何操作。但是,如果删除print语句,应用程序将按预期退出。
因此看起来print语句阻止了脚本的其余部分运行。我怎么能避免这个?
答案 0 :(得分:1)
改为使用日志记录。
import logging
logging.basicConfig( filename='gui_app.log', level=logging.INFO, propogate=0 )
使用logging.info( "Exiting" )
代替print语句,logging是监视应用程序的正确方法,不会中断控制流。