【python】Py程序发布——python环境移植,以及生成EXE程序(无环境依赖)

文章总结两种Py程序发布在其他电脑运行的方式,一种是安装环境方式需要进行环境移植,第二种是直接发布为exe文件,无需安装环境的方式

一,python环境移植

1.新建site-packages目录,进入到site-packages目录下;

2.在site-packages目录下执行pip freeze >requirements.txt;

3.查看requirements.txt,可以看到当前机器的python所有依赖包已生成列表

4.在当前目录下执行pip download -rrequirements.txt,可以看到pip开始下载依赖包列表中的所有依赖包

5.等待下载完成后,可以看到当前目录下已经有了依赖包文件

6.将site-packages文件夹打包,移动至我们需要这些依赖包的机器上;

7.在当前机器的site-packages目录下执行:pip install --no-index --find-links=/xxx/xxx/site-packages -r /xxx/xxx/site-packages/requirements.txt

(其中:/xxx/xxx/site-packages是指定依赖包路径,/xxx/xxx/site-packages/requirements.txt是指定依赖包列表路径);

8.执行pip list,查看当前pip安装的所有python依赖库,可以看到我们迁移过来的库已经安装成功了

二,生成EXE程序(无环境依赖)

将py文件打包成可执行的exe应用程序,方便迁移到其它电脑(不需要安装python运行环境)上使用。

1、安装打包要用的第三方库pyinstaller

pip install pyinstaller

2、将程序的相关所有py文件,放在相同文件夹中

如果程序import了其它第三方库,需要把这些第三方库的文件也放进来。

第三方库文件查找方法:pycharm中ctrl+鼠标左键即可跳到第三方库的位置,在python的安装目录下,找到和库名字一样的文件夹,复制到将要打包的文件夹下就可以了。

3、自定义程序图标

可以去ico图标生成网站上,生成一个我们的个性图标,名字改好,比如 favicon.ico,也放在打包的文件夹里

4、以上准备就绪后,就可以执行打包命令了

打开cmd窗口,使用 cd+文件夹 命令,把路径切换到要打包的文件夹,输入以下命令:

pyinstaller -F -i favicon.ico mypyfile.py

注:favicon.ico 是自定义图标的文件名,mypyfile.py 是程序文件

关于命令的参数:

-F:生成单个可执行文件

-w:表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧

-c –console, –nowindowed 使用控制台,无界面(默认)

-p 表示你自己自定义需要加载的类路径,一般情况下用不到

-i 表示可执行文件的图标

其他参数,可以通过

pyinstaller --help

查看

等待程序执行完成后,在打包的文件里,会生成3个新的文件夹,其中有一个文件夹名字为 dist,打开这个文件夹,找到和自己程序文件名相同的exe应用程序,就可以拿到别的地方使用了

5,在使用过程中可能会运行错误如下:

可从提示连接下载安装:

6,如果有用到一些包提示没有模型如下:

错误内容:

ModuleNotFoundError: No module named ‘pyttsx3.drivers’

解决方法:在命令行修改为

pyinstaller -F a.py --hidden-import=pyttsx3.drivers.sapi5

python变成exe需要python环境吗_[Python]py程序发布——Python环境移植和exe程序生成(无环境依赖性),pythonPy,以及,EXE...相关推荐

  1. python脚本设置环境变量_详解如何设置Python环境变量?

    家好,我是Yivies!相信大家多多少少遇到过这样的情况吧?就是在安装了python之后想完整在命令提示符直接输入python就可以使用的操作,但是会出现输入了python之后找不到命令的情况!例如这 ...

  2. 如何找到python的环境变量_总算懂得如何设置python环境变量

    总算懂得如何设置python环境变量 日期:2019-08-25 12:22:21 浏览:279 核心提示:相信很多初学者,在安装了python之后想完整在命令提示符直接输入python就可以使用的操 ...

  3. 引入yml依赖包_手把手教你发布 Python 项目开源包

    编译:机器之心,作者:Gabriel Lerner.Nathan Toubiana 好不容易码了个 python 项目,是不是很兴奋?那么怎么把这个项目发出去让大家看到呢?本文作者写了一份在 GitH ...

  4. python 去掉list元素的双引号_一天快速入门 Python

    Python 是由Guido Van Rossum在 90 年代早期设计,现在是最常用的编程语言之一.特别是人工智能的火热,再加之它的语法简洁且优美,实乃初学者入门AI必备的编程语言. Python基 ...

  5. python任意代码都可以缩进去_我发现了个 Python 黑魔法,执行任意代码都会自动念上一段 『平安经』...

    最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此,明哥今天分享一个 Python 的黑魔法,教你如何在 ...

  6. python零基础入门五小时教学_五小时轻松入门Python

    Python 是由Guido Van Rossum在 90 年代早期设计,现在是最常用的编程语言之一.特别是人工智能的火热,再加之它的语法简洁且优美,实乃初学者入门AI必备的编程语言. Python基 ...

  7. python能在ipad上运行吗_如何用iPad运行Python代码?

    其实,不只是iPad,手机也可以. 痛点 我组织过几次线下编程工作坊,带着同学们用Python处理数据科学问题. 其中最让人头疼的,就是运行环境的安装. 实事求是地讲,参加工作坊之前,我已经做了认真准 ...

  8. 黑马程序员 python 基础版 哪个老师_(看黑马程序员Python基础班视频挺好,犹豫该不该报班?)...

    看黑马程序员Python基础班视频挺好,犹豫该不该报班? 如果看视频比较好的话,还是建议自学吧,毕竟录制视频的老师不一定参与实质的讲课,且能自学也省一笔培训费用了.我是看的bilibili上黑马程序员 ...

  9. python能开发小程序吗_搭建小程序用Python语言可以搭建吗?

    原标题:搭建小程序用Python语言可以搭建吗? 正如我们在学习语言编程的过程中能发现各种逻辑规律的奥妙无穷那样,当我们能掌握一种语言编程方式之后,逐渐地也能深刻地感受到如今在小程序编写上还能有着怎样 ...

  10. python四则运算程序_四则运算小程序(Python)

    二. 题目要求 写一个能自动生成小学四则运算题目的程序,然后在此基础上扩展: 1)除了整数以外,还要支持真分数的四则运算,例如:1/6+1/8=7/24 2)程序要求能处理用户的输入,判断对错,累积分 ...

最新文章

  1. linux c sql server 存储过程,SQL Server 2016 - 本机编译的函数
  2. 快手二面:Java 里的 for (;;) 与 while (true),哪个更快?
  3. 大数据的3V和三个层面
  4. MMU和cache学习
  5. docker容器间数据共享
  6. 动态添加内容到百度搜索框里
  7. 分析 Web 资源的访问过程(Servlet 程序访问过程)
  8. 任何傅里叶级数展开和卷积可以参考一下页面
  9. World Token钱包官网骗局模式,是传销吗?
  10. CSAPP:第十一章 网络编程
  11. 傅里叶变换,拉普拉斯变换和小波变换
  12. 2019 年我是怎么熬过来的?
  13. excel中折线图怎样设置成箭头处没刻度线?
  14. PSINS不可交换(圆锥/划桨)误差补偿
  15. Java 下载 Excel文件打不开
  16. 什么是嵌入式?嵌入式开发怎么学
  17. 计算机网络——移动IP
  18. 宁波银行金融科技面试
  19. 幼儿零基础学python_《幼》字意思读音、组词解释及笔画数 - 新华字典 - 911查询...
  20. Worthington 核糖核酸酶 T1解决方案

热门文章

  1. 杨百翰大学计算机科学专业,杨百翰大学有哪些专业_专业排名
  2. jQuery中siblings无效
  3. 纯0基础Java自学
  4. 华为荣耀5a是android几,华为荣耀5a各版本区别 华为荣耀5a各版本 对比【图文】
  5. 作为ARM Cortex-M家族的继承者 Cortex-M23与M33有哪五大特色?
  6. “笨办法学python”学习笔记-一些附加题
  7. 设置vs2107背景图片
  8. 这个Python自动扫雷算法写完了,估计看懂的人十不存一了吧
  9. 微信支付-商家给小程序用户转账教程(全网最详细JAVA版)
  10. 概率论与数理统计(第二章---随机变量及其分布函数