You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将图片嵌入Python源代码,使其成为代码一部分并运行时显示?

在Python程序中嵌入图片并运行时显示的解决方案

方法1:将图片编码为Base64字符串嵌入代码

把图片转成Base64文本格式就能直接写到代码里,不需要额外携带图片文件:

  1. 先运行这段代码生成图片的Base64字符串:
import base64

# 替换成你的图片路径
with open("your_image.png", "rb") as img_file:
    base64_str = base64.b64encode(img_file.read()).decode("utf-8")
print(base64_str)
  1. 把输出的长字符串复制到主程序中,用以下代码显示图片(依赖pillow库,对方需执行pip install pillow):
import tkinter as tk
from PIL import Image, ImageTk
import base64
from io import BytesIO

# 替换成你生成的Base64字符串
IMG_BASE64 = """这里粘贴你的Base64字符串"""

# 解码并加载图片
img_data = base64.b64decode(IMG_BASE64)
img = Image.open(BytesIO(img_data))

# 创建窗口显示
root = tk.Tk()
tk_img = ImageTk.PhotoImage(img)
label = tk.Label(root, image=tk_img)
label.pack()
root.mainloop()

如果不想依赖第三方库,可用纯tkinter(仅支持png、gif等少数格式),把加载图片的部分换成:

import tkinter as tk
import base64
from io import BytesIO

img_data = base64.b64decode(IMG_BASE64)
root = tk.Tk()
img = tk.PhotoImage(data=img_data)
label = tk.Label(root, image=img)
label.pack()
root.mainloop()

方法2:打包成单可执行文件(适合非技术用户)

用PyInstaller把脚本和图片打包成一个exe,对方无需安装Python或依赖:

  1. 脚本里正常读取本地图片(确保图片和脚本同目录):
import tkinter as tk
from PIL import Image, ImageTk

img = Image.open("your_image.png")

root = tk.Tk()
tk_img = ImageTk.PhotoImage(img)
label = tk.Label(root, image=tk_img)
label.pack()
root.mainloop()
  1. 安装PyInstaller:
pip install pyinstaller
  1. 执行打包命令(Windows用分号分隔路径,Mac/Linux用冒号):
# Windows
pyinstaller --onefile --add-data "your_image.png;." show_img.py

# Mac/Linux
pyinstaller --onefile --add-data "your_image.png:." show_img.py

打包完成后,dist文件夹里的可执行文件就是成品,直接发给对方即可运行。

你之前尝试失败的原因

直接粘贴原始二进制数据到代码里会触发语法错误,Python无法识别原始字节流。必须把二进制转成Base64这种文本格式,才能嵌入到代码中作为字符串使用。

内容的提问来源于stack exchange,提问作者Ordeal Karisa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 13:55:21