原文地址:http://blog.sina.com.cn/s/blog_67a4066a0100nx8c.html
第三方的软件py2exe,将python脚本软化为exe可执行文件,在看完了py2exe官网上的tutorial后,写一个setup.py脚本
Python代码- from
distutils.core importsetup - import
py2exe -
- setup(console=["'TaskNameList.py"])
在查阅了资料后,我重写了一setup.py方法:
Python代码- from
distutils.core importsetup - import
py2exe - import
sys - includes
= ["encodings", "encodings.*"] - sys.argv.append("py2exe")
- options
= {"py2exe": { 1 } -
} - setup(options
= options, -
zipfile=None, -
console = [{"script":'TaskNameList.py'}])
这次直接执行python setup.py,就可以生成一个独立的exe文件了,当然这个文件还是在dist文件夹下。
这个文件比之前那个的最重要的改进在于两个参数:
Python代码- "bundle_files":
1
3 (default) |
don't bundle |
2 |
bundle everything but the Python interpreter |
1 |
bundle everything, including the Python interpreter |
- zipfile=None,
zipfile = None指定把library.zip也打包进exe 里了。
附:
- from
distutils.core importsetup - import
py2exe - import
sys - includes
= ["encodings", "encodings.*"] - sys.argv.append("py2exe")
- options
= {"py2exe": { 1 } -
} - setup(options
= options, -
zipfile=None, -
console = [{"script":'TaskNameList.py', 'icon_resources':[(1, 'logo.ico')]}])
压缩
直接打包出来的exe文件较大,我在option中加入压缩参数compressed
options
最终打包出来的东西会小一半左右(个人测试)。
Pyinstaller
个人认为不好用,编译时指定额外包含的很多库,而且我指定了对应得库目录后还是无法执行,so,maybe个人不会用的缘故。
虽然py2exe要写脚本,但是也就那么几行代码,还是比较方便的。