一些程序在运行时需要额外的文件,如图片,配置文件等。py2exe并不会自动把他们打包到dist目录,不过可以通过配置参数来打包。
比如,我们的程序中有一个名为images的目录放置了程序需要的图片,或者在sounds目录下放置的音频文件mp3。
那么我们就需要在setup函数中配置参数data_files,这个参数包含一个元组列表(target_dir,files),其中target_dir是指定文件存放的目标路径,files是这些额外文件的一个列表。如果不希望在dist目录下创建子目录,那么可以把data_files指定为空字符串,这些额外文件将打包到dist目录下。
示例:
from distutils.core import setup
import py2exe
from glob import glob
setup(
windows = ['hello.py],
data_files = [('images',['images\*.jpg']),
('sounds',glob(r'sounds\*.*'))]
)
上面的示例中,会把images目录中所有的jpg文件打包到dist/images 子目录中,把sounds目录中的所有文件打包到dist/sounds子目录中。