def yin_pin_bo_fang(yin_pin_wen_jian): #播放音频文件 global yin_pin_bo_fang_cxh yin_pin_bo_fang_cxh = pygame.mixer yin_pin_bo_fang_cxh.init() # 初始化 yin_pin_bo_fang_cxh.Sound(yin_pin_wen_jian).play() # 加载音乐并播放
时间: 2024-01-12 08:04:47 浏览: 61
根据你提供的代码,你是使用`pygame.mixer.Sound`函数播放音频文件的,这个函数会立即开始播放音频文件并返回一个`Sound`对象。这个函数的执行不会阻塞程序,所以当你调用`pygame.mixer.music.get_busy()`时,可能会返回False,因为此时`pygame.mixer.music`对象并没有开始播放音频。
如果你想要使用`pygame.mixer.music`对象播放音频文件,可以使用以下代码:
```python
def yin_pin_bo_fang(yin_pin_wen_jian):
# 播放音频文件
pygame.mixer.music.load(yin_pin_wen_jian) # 加载音乐
pygame.mixer.music.play() # 播放音乐
```
这个函数会使用`pygame.mixer.music.load`函数加载音频文件,并使用`pygame.mixer.music.play`函数播放音频文件。这个函数调用后会阻塞程序,直到音频播放完毕。在音频播放完毕后,调用`pygame.mixer.music.get_busy()`会返回False。
相关问题
def yin_pin_bo_fang(yin_pin_wen_jian): #播放音频文件 global yin_pin_bo_fang_cxh yin_pin_bo_fang_cxh = pygame.mixer yin_pin_bo_fang_cxh.init() # 初始化 yin_pin_bo_fang_cxh.Sound(yin_pin_wen_jian).play() # 加载音乐并播放 #time.sleep(1) #等待一秒 def bo_fang_jian_ce(): global bo_fang_jian_ce_fan_hui_zhi bo_fang_jian_ce_fan_hui_zhi = yin_pin_bo_fang_cxh.music.get_busy()
根据你提供的代码,你的`yin_pin_bo_fang`函数中,你使用了`yin_pin_bo_fang_cxh.Sound(yin_pin_wen_jian).play()`播放音频文件,这个函数会立即开始播放音频文件并返回一个`Sound`对象。但是,你没有使用`pygame.mixer.music.get_busy()`函数来检查当前是否有音频正在播放。因此,在你的`bo_fang_jian_ce`函数中调用`yin_pin_bo_fang_cxh.music.get_busy()`函数会返回False,因为此时`pygame.mixer.music`对象并没有开始播放音频。
如果你想要使用`pygame.mixer.music.get_busy()`函数来检查当前是否有音频正在播放,可以尝试修改`yin_pin_bo_fang`函数如下:
```python
def yin_pin_bo_fang(yin_pin_wen_jian):
# 播放音频文件
global yin_pin_bo_fang_cxh
yin_pin_bo_fang_cxh = pygame.mixer
yin_pin_bo_fang_cxh.init() # 初始化
yin_pin_bo_fang_cxh.music.load(yin_pin_wen_jian) # 加载音乐
yin_pin_bo_fang_cxh.music.play() # 播放音乐
time.sleep(1) # 等待一秒
```
这个函数使用`pygame.mixer.music.load`函数加载音频文件,并使用`pygame.mixer.music.play`函数播放音频文件。这个函数执行后会阻塞程序,直到音频播放完毕。在音频播放完毕后,调用`pygame.mixer.music.get_busy()`函数会返回False。
阅读全文