使用cx_Freeze和simpleudio编译报警脚本 上下文 我将python降级为3.4.4 所以我可以使用cx_冻结模块 因为我想要exe格式的脚本 这样我就可以把它发给我的一个没有python的朋友

使用cx_Freeze和simpleudio编译报警脚本 上下文 我将python降级为3.4.4 所以我可以使用cx_冻结模块 因为我想要exe格式的脚本 这样我就可以把它发给我的一个没有python的朋友,python,python-3.x,cx-freeze,Python,Python 3.x,Cx Freeze,我已经了解了它如何在没有导入模块的情况下在单个脚本上工作。这是一个问题,因为我之前编写了一个类似闹钟的脚本,但要播放选定的wav文件(输入为文件名),我需要一个名为simpleaudio的第三方模块 问题: 如何使exe正确运行脚本 代码 alarm.py: import simpleaudio import subprocess import datetime print("Set a wav audio file") wav = input() wav = str(wav) print("

我已经了解了它如何在没有导入模块的情况下在单个脚本上工作。这是一个问题,因为我之前编写了一个类似闹钟的脚本,但要播放选定的wav文件(输入为文件名),我需要一个名为simpleaudio的第三方模块

问题: 如何使exe正确运行脚本

代码 alarm.py:

import simpleaudio
import subprocess
import datetime

print("Set a wav audio file")
wav = input()
wav = str(wav)
print("Set alarm time")
print("hour.minute")
alarmtime = input()
alarmtime = str(alarmtime)

while alarmtime != "%02d.%02d" % (datetime.datetime.now().time().hour, datetime.datetime.now().time().minute):
    print("%02d.%02d.%02d" % (datetime.datetime.now().time().hour, datetime.datetime.now().time().minute, datetime.datetime.now().time().second))

print("Playing",wav)
wave_obj = simpleaudio.WaveObject.from_wave_file(wav)
play_obj = wave_obj.play()
play_obj.wait_done()
setup.py:

import cx_Freeze
import sys
import simpleaudio
import subprocess
import datetime

executables = [cx_Freeze.Executable("alarm.py")]

cx_Freeze.setup(
    name = "alarm",
    options = {"build_exe": {"packages":["simpleaudio","subprocess","datetime"], "include_files":["rasputin.wav"]}},
    executables = executables
    )