将Eclipse配置为完成后发出哔声(Python、Linux)

2024-05-15 13:12:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我将我的应用程序配置为完成后发出哔声(这有助于我在长时间运行时执行多任务)。 在windows上很简单:

def beep_please():
    """Beep on Windows"""
    if os.name == 'nt':
        import winsound #@UnresolvedImport
        winsound.MessageBeep(winsound.MB_ICONEXCLAMATION)

import atexit
atexit.register(beep_please)

问题是我最近切换到Linux,简单的哔哔声不起作用。 打印'\a'也不起作用。 帮忙吗?在


Tags: import应用程序ifosonwindowsdefbeep
2条回答

尝试做sys.stdout.write('\007')而不是print '\a'

根本原因是大多数现代Linux发行版都会关闭烦人的默认“哔哔”声 潜在的解决方案是使用pygame,或者直接使用安装的“player”之一。在

使用Pygame如下所示:

import pygame

pygame.init()
pygame.mixer.music.load("my_sound_file.ogg")
pygame.mixer.music.play()
pygame.event.wait()

但我不希望为了非运行时实用程序而使用新的外部依赖项,所以我最后做的是:

^{pr2}$

在Ubuntu主题中还有很多其他的声音文件:

ls /usr/share/sounds/ubuntu/stereo

相关问题 更多 >