打包python脚本的血与泪(python能做脚本吗)

发布时间:2022-11-09

本文目录一览:

1、如何把python脚本打包成exe
2、Pycharm怎么打包Python脚本
3、[python pyinstaller问题](#python pyinstaller问题)
4、如何将一整个python工程打包

如何把python脚本打包成exe

  • 使用 py2exe
  • 安装 py2exe
  • 进入 Python 程序所在文件夹
  • 在文件夹下写一个 setup.py 的 Python 文件,内容如下:
from distutils.core import setup
import py2exe
setup(console=["将要转换的文件名称.py"])
  • 打开 CMD 窗口,将工作目录切换到 Python 文件所在文件夹,并输入命令:
python setup.py py2exe
  • 命令成功完成后,进入原 Python 文件的文件夹下可看到新产生的文件夹。
  • 进入 dist 文件夹,里面的 .exe 就是我们需要的 Windows 程序。

Pycharm怎么打包Python脚本

  • Python3 是必须的,PyQt 是做界面的,PyCharm 是优秀的 IDE,PyInstaller 生成可执行文件。
  • 先按照教程安装 Python3、QT、PyCharm 软件,因为目前 PyQt5 只支持 Python 3.4,所以安装 Python 3.4。
  • 参考教程:PyQt5 + Python3 + PyCharm 开发环境配置
  • 在环境变量中增加:
QT_QPA_PLATFORM_PLUGIN_PATH
C:\Python34\Lib\site-packages\PyQt5\plugins
py -m pip install pyinstaller
  • 在要制作的 exe 文件目录输入:
pyinstaller -F -w *.py
  • -F(注意大写)是所有库文件打包成一个 exe,-w 是不出黑色控制台窗口。
  • 不加 -F 参数生成一堆文件,但运行快。压缩后比单个 exe 文件还小一点点。
  • -F 参数生成一个 exe 文件,运行起来慢。
  • 按照第一步的方法,将 PyInstaller 加入 PyCharm 的 external tool,可以加两个,一个生成单独 exe 文件,一个生成运行带库的程序目录。
  • 好了,环境搞好了,做界面、编程、调试、生成 exe,慢慢练习吧!

python pyinstaller问题

  • 打包 Python 脚本为 exe 的坎坷经历,使用 PyInstaller 方法。
  • 安装过程略去不提,仅提示:
pip install pyinstaller
  • 打包指令:
pyinstaller monitor_rt_quotes.py
  • 结果提示错误:
Error loading Python DLL: D:\DB\fz\build\monitor_rt_quotes\python27.dll (error code 126)
  • 估计是没有添加必要的打包选项造成的,继续努力。
  • 不死心!解决问题需要由简到繁,先从 helloworld.py 做起,搞定了。
  • 被打包的文件:helloworld.py
  • 打包的命令:
pyinstaller -D helloworld.py
  • 打包发布 exe 时的注意事项:
    • 很简单的 py 脚本,Simple is better than complex,应该遵守 Python 的规则。
    • 所以在打包为 exe 时,应该尽量减少没有必要的 Python 包的导入,否则会“吃得太胖”。
    • 可以运行的 exe 文件位于 dist 目录下,而不是 build 目录下的。

如何将一整个python工程打包

  1. 下载并安装 py2exe,可下载最新版本。
  2. 编写安装脚本,比较简单,如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from distutils.core import setup
import py2exe
includes = ["encodings", "encodings.*"]
data_files = ['CameraDll.dll']
options = {
    "py2exe": {
        "compressed": 1,
        "optimize": 2,
        "bundle_files": 1,
        "includes": includes
    }
}
setup(
    version="1.0",
    description="Screenshot Tool",
    name="Screenshot Tool",
    options=options,
    zipfile=None,
    data_files=data_files,
    console=[{
        "script": "Screenshot.py",
        "icon_resources": [(1, "Screenshot.ico")]
    }]
)
  1. 打包程序: a. 将要打包的程序、文件和打包脚本放在同一目录下,例如:
E:\tmp\pyexe_tmp
├── CameraDll.dll
├── screenshot.ico
├── Screenshot.py
└── screenshot_setup.py

b. 执行打包脚本:

E:\tmp\pyexe_tmp> python screenshot_setup.py py2exe
  • 各参数含义见第 5 小节或执行 python 命令行下执行 help(py2exe) 查看。