0

我在 Tkinter 中制作了一个刽子手游戏,每个字母都有按钮,每个按钮都链接到一个函数,该函数将处理字母并告诉我它是否正确。我怎样才能让一个函数发出正确的声音和不正确的声音,我不想说我从哪里得到我的 wav 文件,因为它会移动(它总是和我的程序在同一个文件中)。我不想要下载另一个模块并且另一个问题的答案不起作用。

我试过这个,但它没有发出声音:

def no():
    lambda: PlaySound('wrong.wav', SND_FILENAME)
def yes():
    lambda: PlaySound('right.wav', SND_FILENAME)
4

1 回答 1

0

你似乎不清楚什么lambda是:

Python 支持在运行时创建匿名函数(即未绑定名称的函数),使用名为“lambda”的构造。

在您给出的示例中,您没有创建任何匿名函数,因此它们完全没有必要。只需删除它们,一切都会正常。

def no():
    PlaySound('wrong.wav', SND_FILENAME)
def yes():
    PlaySound('right.wav', SND_FILENAME)

但是请记住 winsound 仅适用于 Windows(因此没有跨平台开发)并且要使用您需要的这些功能from winsound import *

于 2018-01-24T01:39:47.687 回答