Python os.exec():在运行“通知发送”时终止

Rac*_*ion 1 python exec libnotify

我正在Linux下编写一个小的Python脚本,该脚本会libnotify通过使用以下语法弹出许多弹出窗口:

import os
os.execv('/usr/bin/notify-send', ['App Title', 'Message'])
Run Code Online (Sandbox Code Playgroud)

不幸的是,由于某种奇怪的原因,它杀死了解释器,直到命令提示符。
它不会与脚本执行的任何其他命令一起执行此操作notify-send

没有给出任何错误,没有引发任何已知的异常,没有任何错误的迹象,它只会消失在命令提示符下。

是否有人有同样容易做到的建议或替代方案?

Dan*_* D. 5

您应该使用subprocess.call它将在新进程中启动由其参数命名的程序,并等待子进程退出,而不是使用os.execv它用其参数指定的程序替换当前进程中正在运行的程序。

用法是 subprocess.call(['/usr/bin/notify-send', 'App Title', 'Message'])