Skip to main content
 首页 » 编程设计

python之如何从 Python 制作 .app 包含图像文件

2025年05月04日25zfyouxi

我想从我的 Python 源代码创建一个 .app 文件。我的 Python 源代码是 wxPython,有 11 个图像文件(.png,大小为 32x32)

制作.app是成功的,但它不包括我的图像文件,它只是显示错误信息

没有定义类型 50 的位图处理程序。

详细...

无法从文件加载图像...

即使在同一目录中,它仍然显示此错误消息。

我在 MacOSX 10.6.7 上使用 py2app、python 2.7 和 wxPython

如何使用我的图像文件制作 .app?

请您参考如下方法:

包含资源的最简单方法是将它们指定为 data_files在你的setup.py

from setuptools import setup 
 
APP = ['app.py'] 
DATA_FILES = [('', ['images'])] 
OPTIONS = {'argv_emulation': True} 
 
setup( 
    app=APP, 
    data_files=DATA_FILES, 
    options={'py2app': OPTIONS}, 
    setup_requires=['py2app'], 
) 

<app.app>/Contents/Resources将是所有数据的当前目录和资源根目录。这将放置 images/资源根目录中的项目目录。

如果您只想包含来自 images/ 的特定文件您可以告诉它如何映射的目录:

DATA_FILES = [ 
    ('images', ['images/picture.jpg', 'images/picture2.png']), 
    ('images/icons', ['images/icons/ico1.ico']) 
] 

或者你可以更高级地说“只包含我的图像目录中的所有 jpeg”:

from glob import glob 
... 
DATA_FILES = [ 
    ('images', glob('images/*.jpg')), 
]