Python脚本打包为exe文件

本文转载自http://www.open-open.com/lib/view/open1342675735745.html
 
把用Python写好的脚本,可以用pyinstaller打包成.exe文件,方便发布,在其他电脑上脱离python语言环境而运行。
1、要求:
python3.5及以下版本,暂时不支持3.6版本。
我电脑python是3.5版本
我电脑安装的pyinstaller是3.2.1
 
2、打包 (以NIPT_analysis.py 为例)
a、去除代码中所有中文字符,包括注释。(指定编码的注释可以不去掉没有关系) 
b、 如果用到非官方的库,可能pyinstaller找不到该库,因此需要根据情况修改。
 
命令行:
注意:
(1)所有.py文件都不能有中文字符,否则会出现编码异常。
(2)执行上述命令后,在会生成dist目录,里面就有打包后的可执行文件。 
(3)启动执行的文件中不要有下面这种判断,否则可执行文件执行会没有任何效果。(来源网络) 
       if __name__ == "__main__": 
           main()
(4)文件内容不能有中文,即使是注释中也不能有,否则出现如下错误。 (原自网络)
    codeString = fp.read() 
  File "C:Python31libcodecs.py", line 300, in decode 
    (result, consumed) = self._buffer_decode(data, self.errors, final) 
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 557-558: invalid 
 data 
尝试把编码由cp936改为utf-8,也不可以,把文件中ASCII另存为UTF-8,也不行,有如下错误: 
  File "BlogConfig.py", line 1 
    ufeff#!/usr/bin/python 
      ^ 
SyntaxError: invalid character in identifier 
(5)有些三方模块,比如我的statsmodels 在pyinstaller中找不着,需要做如下修改:
      
最后终于成功!!!在dist目录生成单一的NIPT_Analysis.exe文件,这个文件是可执行的。
原文地址:https://www.cnblogs.com/zdwu/p/6912619.html