首页 > 编程语言 >安装mayavi命令,使用cxfreeze打包python脚本

安装mayavi命令,使用cxfreeze打包python脚本

时间:2024-09-10 10:13:48浏览次数:1  
标签:exe python mayavi 应用程序 cx cxfreeze install pip 打包

pip install numpy

出现A new release of pip is available: 23.2.1 -> 24.2
输入:
python -m pip install --upgrade pip setuptools wheel

pip install PyQt5

pip install vtk
pip install mayavi
pip install scipy

pip install configobj

 查看当前项目的依赖包:

pip freeze > requirements.txt

这个命令会将当前环境中安装的所有 Python 包及其版本信息写入 requirements.txt 文件中。 PS:如果你想在另外一个环境安装这些依赖包可以使用这个命令

pip install -r requirements.txt

2、使用cx freeze打包

新建一个脚本,这里为:setup.py

pip install cx_Freeze
from cx_Freeze import setup, Executable

build_exe_options = {


    "packages": ["altgraph","apptools","configobj","contourpy","cx_Freeze","cx_Logging","cycler","envisage","importlib_metadata","importlib_resources","kiwisolver","lief","matplotlib","mayavi","numpy","packaging","pefile","pyface","pyparsing","PyQt5","six","traits","traitsui","typing_extensions","vtk","zipp","scipy"],
    'excludes': [],

}

setup(
    name="Test",
    version="1.0",
    description="zz.py",
    author="master",
    options={
        "build_exe": build_exe_options},
    executables=[Executable(script="zz.py", base="win32gui")])

packages:指定要包含在构建中的包列表。这些是你的脚本运行所需的依赖项。
excludes:这是一个空列表,表示没有包被排除在构建之外。

name:应用程序的名称。
version:应用程序的版本。
description:应用程序的简短描述。
author:应用程序的作者。
options:包括之前定义的构建选项。
executables:这是一个 Executable 对象的列表。每个 Executable 对象指定一个要转换为可执行文件的脚本。
script:应用程序的主脚本。
base:设置为 "win32gui",表示该应用程序是一个 Windows GUI 应用程序。

打包

python setup.py build

打开exe程序如果发生报错:
则根据报错信息,比如报错信息如下图的时候把虚拟环境下的dll复制到exe程序下的lib文件夹,然后把整个vtk.libs复制到lib文件下,即可解决

不单单只报一个错误,只需要根据错误找到缺少的文件复制过去就可以了,注意找到错误关键字,ModuleNotFundError,早不到可以用everything工具搜索。我感觉应该是VTK打包的时候会丢失文件,主要是使用了VTK依赖包的时候才会在打包出现各种问题。

标签:exe,python,mayavi,应用程序,cx,cxfreeze,install,pip,打包
From: https://www.cnblogs.com/nihaozaijian/p/18404801

相关文章

  • Python编写一个图片自动播放工具
    目录引言项目概述环境设置使用Pygame显示图片实现自动播放功能添加用户交互实现完整的图片自动播放工具添加功能扩展最终代码和演示总结1.引言随着数码摄影和社交媒体的普及,图片成为了我们日常生活中不可或缺的一部分。无论是在家庭聚会、旅行还是工作项目中,我们都会积累......
  • 使用 Python 创建自动抽奖程序
    介绍自动抽奖程序在各种场景中非常有用,比如社交媒体活动、公司抽奖、在线课程奖励等。在这篇博文中,我们将学习如何使用Python创建一个自动抽奖程序。我们将涵盖以下内容:需求分析环境设置基本抽奖逻辑图形用户界面(GUI)设计高级功能(导入/导出参与者列表,定时抽奖等)测试和部署1......
  • 18 Python如何操作文件?
    本篇是Python系列教程第18篇,更多内容敬请访问我的Python合集1打开文件通常使用内置的open(文件路径,模式,encoding="utf-8")函数。文件路径:可以是相对路径或绝对路径。模式:(可选)决定了文件打开后如何处理文件。encoding:(可选)编码方式。常见的模式有:'r'(默认)......
  • 6、Python如何统计序列中元素的频度
    有一个列表如下:data=['a','c','f','b','f','e','k','d','f','k']如何统计每个元素出现的次数呢?方案一:使用Listcount方法如果只要知道某一个元素出现的次数,直接使用Listcount方法就可以data=['......
  • 【pytorch(cuda)】基于DQN算法的无人机三维城市空间航线规划(Python代码实现)
       ......
  • 【负荷预测】【没发表过论文】基于VMD-CNN-BiLSTM-Attention的负荷预测研究(Python代码
      ......
  • Introduction to data Science with Python
    FINALASSESEMENT.IntroductiontodataSciencewithPythonGeneralInstructionsThisisthefinalassessmentforthecourse.Youneedtodownloadthedatasetsprovidedtoanswerthequestions.The5datasetsnamed'World_Happiness_Report'(there......
  • python 实现gamma 伽玛功能算法
    gamma伽玛功能算法介绍Gamma(伽玛)功能算法通常与不同的领域和应用相关,包括但不限于图像处理、光学测试、数学计算等。以下是根据您提供的搜索结果,对Gamma伽玛功能算法的一些概述:在图像处理中的Gamma校正在图像处理中,Gamma校正是一种用于调整图像亮度的方法,特别是为了校正......
  • python 实现gaussian高斯算法
    gaussian高斯算法介绍高斯算法(Gaussianalgorithm)是一个广泛的概念,因为“高斯”这个名字与许多不同的数学和算法技术相关联。但是,在大多数情况下,当人们提到“高斯算法”时,他们可能是在指高斯消元法(Gaussianelimination),这是一种在数学中用于求解线性方程组、计算矩阵的行列......
  • 中文关键字检索分析-导出到csv或者excel-多文件或文件夹-使用python和asyncio和pandas
    1.02版本把原来的tab一个个拼接成文件输出,改成pandas的dataframe使用asyncio库来使用协程,但是测试下来速度好像是差不多的。可能速度太快了,没能很好的测出来差异。原来的最初的代码是java版本的,现在用python重写一遍java版本使用completableFuture来异步IO,主要是文件输......