我转换了.py-->.exe,但代码不起作用

问题描述 投票:0回答:1

你好,我转换了我的Python文件,它在循环中播放声音,但是当我尝试将它作为exe文件运行时它不起作用。

我的代码:

import time
from playsound import playsound
def function(times,how_long):
    import time
    a=0
    while True:
        playsound("C:/Users/talha/Desktop/hihihiha.mp3")
        a+=1
        if a==times:
            break
        else:
            time.sleep(how_long)
function(2,3)

我猜问题是我的Python代码,因为我尝试了另一个代码,它作为一个exe文件工作。只需点击一个按钮,然后就会说“Hello World”。

python
1个回答
0
投票

问题与文件路径有关。您为声音文件指定的路径是桌面上的绝对路径。

当您直接运行脚本时,它会起作用,因为它是在 Python 环境的上下文中执行的,并且可以访问指定的文件。但是,当您将其转换为可执行文件时,工作目录可能会发生变化,并且绝对路径可能无效。

所以你可以像这样指定文件

sound_file_path = os.path.join(os.path.dirname(__file__), "hihihiha.mp3")

当您尝试运行 exe 文件时,请确保它与 mp3 文件位于同一文件夹中。

© www.soinside.com 2019 - 2024. All rights reserved.