我有一个在os中播放音频文件的功能。我想在调用该函数时继续循环播放音频,除非调用另一个close函数,否则它应该停止播放。
def music:
cast=1
while cast=1:
os.system('mpg123 /home/debian/sample.mp3')
def close:
cast=0
global cast
我有另一个函数正在调用close()
编辑:如果我这样输入声音播放命令:
os.system('mpg123 --loop 3 /home/debian/sample.mp3')
然后播放3次音频后,程序确实进入关闭功能。
我如何在演员表= 0时立即转到关闭功能?
这会卡在while循环中,并会一直播放音频文件。
关于如何使其工作的任何想法?
谢谢
答案 0 :(得分:0)
每个更改值的函数必须声明该变量为全局变量;否则,它只是一个具有相同名称的局部变量。
此外,如果您使用的是简单的布尔值标志,请使用布尔值。
def music:
global cast
cast = True
while cast:
os.system('mpg123 /home/debian/sample.mp3')
def close:
global cast
cast = False