首页 > 解决方案 > 为什么我的变量应该是全局变量却被认为是局部变量?

问题描述

我有一个变量,它在函数内的 while 循环条件下使用。运行该函数时出现错误提示:分配前引用了局部变量“audioLength”

song = input("Enter a song to play: ")
songFile = song + ".mp3"
mp3File = MP3(songFile)
audioLength = int(mp3File.info.length)

def play():
    pygame.mixer.music.load(song + ".mp3")
    pygame.mixer.music.play()
    while audioLength != 0:
        audioLength -= 1
        time.sleep(1)

我不确定为什么它认为audioLength是一个局部变量,我该如何解决这个问题?

标签: python

解决方案


推荐阅读