gpt4 book ai didi

python - 使用图像和声音文件夹编译Python代码?

转载 作者:行者123 更新时间:2023-12-01 06:25:08 27 4
gpt4 key购买 nike

我目前正在开发一个项目,最后我需要编译它。我面临的问题是,我正在使用 .py 文件,还有 2 个文件夹,一个包含所有图像,另一个包含所有音乐......

我环顾四周,但没有任何东西可以完全回答问题。我发现最好对我的图像进行 Base64 编码,但这似乎对我不起作用...我尝试了 UTF-8 字符和二进制。

知道如何将我的 2 个文件夹和代码文件转换为可在任何计算机上使用的单个 .exe 可执行文件吗?

谢谢

安加罗斯

最佳答案

您是否尝试过这种方法:

<小时/>

假设您有这样的布局

main.py
resources.py
data/img1.png

main.py中:

import resources
import tkinter as tk

root = tk.Tk()
root.title("Test")

resources.load_images()
lbl = tk.Label(root, image=resources.IMG1)
lbl.place(relx=0.5, rely=0.5, anchor="c")

root.mainloop()

resources.py中:

import tkinter as tk

IMG1 = None

def load_images():
global IMG1

IMG1 = tk.PhotoImage("data\\img1.png")

这工作得很好,并且可以加载您的图像。

<小时/>

现在让我们让它在一个 exe 文件中运行:

我们不需要更改 main.py,因为它只是通过我们的 resources.py 脚本加载资源。

我们可以使用此脚本加载/保存图像数据:

import base64

def load_data(filename):
with open(filename, mode="rb") as f:
return base64.b64encode(f.read())

print(str(load_data("data\\img1.png"), "utf-8"))
# R0lGOD ...

现在我们可以将其复制并粘贴到我们的 resources.py 文件中,并将其更改为如下所示:

import tkinter as tk

# here's our copied base64 stuff:
img1_data = '''
R0lGODlhEAAQALMAAAAAAP//AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAA\nAAAAACH5BAEAAAIALAAAAAAQABAAQAQ3UMgpAKC4hm13uJnWgR
TgceZJllw4pd2Xpagq0WfeYrD7\n2i5Yb+aJyVhFHAmnazE/z4tlSq0KIgA7\n
'''

IMG1 = None

def load_images():
global IMG1

IMG1 = tk.PhotoImage(data=img1_data)

现在使用 PyInstaller 编译我们的 main.py 文件:

pyinstaller main.py --onefile

任务完成后,我们应该看到 dist 中有一个可执行文件,名为 main.exe

关于python - 使用图像和声音文件夹编译Python代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60193977/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com