返回顶部
首页 > 资讯 > 后端开发 > Python >如何发布你的Python应用
  • 581
分享到

如何发布你的Python应用

2023-06-15 12:06:02 581人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

如何发布你的python应用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。记得之前看过一篇文章,说的是龙哥当年准备卖掉 foxmail,买方是雷军,雷军的意思是:就这,我也能写

如何发布你的python应用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

记得之前看过一篇文章,说的是龙哥当年准备卖掉 foxmail,买方是雷军,雷军的意思是:就这,我也能写。于是就没有成交。

我的感觉就是,程序员写的软件,要给不懂技术的人用才有价值,否则得到的就是:就这,我也能写。

我们不是龙哥,写不出牛逼的 foxmail,但是写个自动化的脚本还是可以的,即使是一个小小的脚本,只要能提供帮助,其他人也是有需求的。

那么如何将你写的程序发布给其他人用呢?

我尝试过一些常用的打包工具,py2exe,pyinstaller,这些工具有一些缺点:

  1. 不稳定。明明我自己的电脑可以运行,放到其他电脑就会报错闪退,提示系统缺少 xxx.dll 动态链接库文件。

  2. 配置文件复杂。简单的打包方式可能无法满足需要,复杂一些的就要写配置文件,有时明明写好的配置文件,就是没有生效。

  3. 打包文件大,启动慢。这些工具并不会编译成可执行文件,而是将 Python  解释器,依赖的三方库一起打包,如果打包成一个文件,运行超慢,因为这些会一起加载进内存。

  4. 还有一种方式就是编写 WEB 应用程序,发布成 Web 站点、H5、微信小程序等形式,这个门槛就有点高了,你需要有一定的经验且熟悉 Web  开发,还要购买服务器或者云产品。

今天分享一下非常简单可行的方式发布 Python 应用程序,发布后用户只需要双击一个文件就可以启动你的应用程序,不懂任何技术的人都会使用。

具体的方法就是使用官网发布的嵌入式 Python 包,不过这个仅适用于 windows,这也不是什么大不了的,大多数非程序员用的都是  Windows。「如果是 Mac 请使用 py2app 来打包」

访问 www.python.org 下载 Windows embeddable package,如果你自己的电脑是 64 位的,就下载 64  位,如果要做的更通用些就用 32 位的,因为 64 位电脑可以运行 32 位的程序,反之则不行。

如何发布你的Python应用

这里我选择 python-3.9.5,解压后得到 python-3.9.5-embed-amd64 文件夹,这是一个免安装的 Python  环境,随便复制到其他 Windows 平台都可以稳定运行。进入目录,执行 .\python,只要是标准库都可以导入。

如何发布你的Python应用

不过在正式使用之前,我们还需要进行两点改造。

安装 pip 工具

我们写程序不可能只用标准库,还要使用第三方库,比如 requests,那么就要为 Python 环境配置 pip。

从这里下载 get-pip.py 文件

https://bootstrap.pypa.io/get-pip.py

将 get-pip.py 存放在 python-3.9.5-embed-amd64 文件夹中,然后进入该目录执行:

.\python get-pip.py  --no-warn-script-location

即可完成 pip 的安装:

如何发布你的Python应用

此时 pip 已经安装在 Lib\site-packages 下。

使用 pip

现在安装 requests 并 import 测试。发现报了个错,说找不到 pip。

如何发布你的Python应用

好,现在进入 Python 解释器环境,看下 Python 的搜索路径 sys.path,发现并没有  Lib\site-packages,那么们就添加它。

如何发布你的Python应用

添加搜索路径

进入 python-3.9.5-embed-amd64 文件夹,修改文件 python39._pth 文件

如何发布你的Python应用

修改之后内容如下:

python39.zip . .. # Uncomment to run site.main() automatically import site

这里修改了两个地方,一个是加入上级目录 ..,另一个是取消注释 import site。

加入上级目录是为了在该目录之外存放一些自己写的 Python 脚本,这样目录 python-3.9.5-embed-amd64  就可以保持独立,不放入任何自己写的脚本,免得 Python 环境相关的文件被污染。

取消注释 import site 会自动运行 site.main(),查看 Python 的 Lib/site.py 的源代码就可以知道  site.main() 会将 Lib\site-packages 自动添加到 sys.path 中,当然它的功能还不止这些,我们先知道这些就够了。

接下来再次查看 sys.path,发现 Lib\site-packages 已经在里面了:

如何发布你的Python应用

再次安装 requests 并导入测试,成功:

如何发布你的Python应用

发布程序

现在就可以写代码发布程序了,我这里写好了一个脚本 main.py 获取用户输入的文本,自动调用百度翻译,返回翻译的结果,内容如下:

import JSON import requests url='Https://fanyi.baidu.com/sug' kw = input('请输入待翻译的文本:') kw = {     'kw':kw } header = {     'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_0) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/80.0.3987.132 Safari/537.36' } response = requests.post(url=url, data=kw, headers=header) response.raise_for_status response.encoding = response.apparent_encoding content_json = response.json() #默认转成ascii编码,因此需要设置成false content = json.dumps(content_json,ensure_ascii=False) result = json.loads(content) print(result["data"])

然后放在与 python-3.9.5-embed-amd64 文本夹并列的位置,考虑到有人不会打开命令窗口,我们还需要制作一个 bat  脚本文件,用户双击这个文件就可以运行我们的程序,内容如下:

cmd.exe /K .\python-3.9.5-embed-amd64\python main.py

这里 cmd 传入 /K 参数是为了程序运行完成后不关闭命令窗口,这样我们就可以看到程序返回了啥,不然直接唰的一下窗口就没了。

最终文件夹如下所示:

如何发布你的Python应用

现在将 main.py、双击运行.bat、python-3.9.5-embed-amd64 压缩到一个文件夹  embed_python.7z,发送给需要的人,他解压后,双击那个 bat 文件就可以运行你的程序了:

如何发布你的Python应用

压缩后只有 10 MB 的大小,微信上就可以直接传输了,方便。

如何发布你的Python应用

看完上述内容,你们掌握如何发布你的Python应用的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网Python频道,感谢各位的阅读!

--结束END--

本文标题: 如何发布你的Python应用

本文链接: https://lsjlt.com/news/280193.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何发布你的Python应用
    如何发布你的Python应用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。记得之前看过一篇文章,说的是龙哥当年准备卖掉 foxmail,买方是雷军,雷军的意思是:就这,我也能写...
    99+
    2023-06-15
  • 如何使用Python与Laravel开发分布式应用?
    分布式应用是一个复杂的系统,需要高效的通信协议和数据传输,同时还需要处理大量的数据和并发访问。Python和Laravel分别是两个非常强大的编程语言和框架,它们可以帮助我们快速开发高效的分布式应用。本文将介绍如何使用Python和Lara...
    99+
    2023-08-27
    分布式 开发技术 laravel
  • 发布你的Python模块详解
    我们在学习Python的时候,除了用pip安装一些模块之外,有时候会从网站下载安装包下来安装,我也想要把我自己编写的模块做成这样的安装包,该怎么办,如何发布呢? 大概需要以下四个步骤: 1.首先为模块创建一...
    99+
    2022-06-04
    详解 模块 Python
  • 如何使用Flutter发布安卓应用
    目录设置应用的名称,包名、应用图标和启动替换应用图标替换启动页设置访问权限配置版本发布参数生成应用签名修改配置文件打包注意事项设置应用的名称,包名、应用图标和启动 安卓的应用资源配...
    99+
    2024-04-02
  • 如何学习分布式应用开发?GO语言教程来帮你!
    分布式应用开发是当今互联网领域中热门的方向之一,也是一个非常具有挑战性的领域。由于分布式应用的复杂性,学习这方面的知识需要一定的耐心和时间,但是只要我们按照正确的方式去学习,我们就能够快速掌握这方面的知识。本文将向大家介绍如何学习分布式应用...
    99+
    2023-09-04
    开发技术 教程 分布式
  • 如何使用Java开发分布式应用?
    Java是一门广泛使用的编程语言,广泛应用于开发分布式应用程序。本文将介绍如何使用Java开发分布式应用程序,包括分布式应用程序的基本概念、Java的分布式应用程序开发工具和技术,以及分布式应用程序的开发实践。 一、分布式应用程序的基本概念...
    99+
    2023-11-07
    path 分布式 开发技术
  • Python如何发布程序
    ##如何发布一个Python程序: ####1.安装一个pyInstaller ######在pycharm里点 file ----->settings----->Project workspace------>...
    99+
    2023-01-31
    程序 Python
  • python如何发布模块
    要发布一个Python模块,可以按照以下步骤进行操作:1. 在你的模块文件夹中创建一个`setup.py`文件,该文件描述了你的模块...
    99+
    2023-08-23
    python
  • Python 3.10发布!你应该知道这5大新特性
    Python 在市场上已经有一段时间了,作为一名 Python 开发人员,我很高兴地分享 Python 正在逐步获得更新和每个新版本的改进。Python 的最新版本 3.10 有一些重大改进,我将在此处列出这些更新。我在列举了这个新版本 的...
    99+
    2023-05-14
    Python 新版本 特性
  • 如何使用Python响应IDE文件,让你的开发更高效?
    Python是一种功能强大的编程语言,被广泛应用于各种领域,特别是在软件开发领域中。许多开发人员使用Python作为他们的首选编程语言,因为它具有简单易学,易于阅读和编写代码的特点。在这篇文章中,我们将介绍如何使用Python响应IDE文件...
    99+
    2023-09-11
    响应 ide 文件
  • Python Spring 开发技术日志:如何优化你的应用程序?
    Python Spring 是一款广泛应用于 Web 开发的框架。但是,开发人员可能会面临一些性能问题,如响应时间慢、高 CPU 占用率等。本文将分享一些优化应用程序的技巧和方法,以帮助你更好地使用 Python Spring 框架。 ...
    99+
    2023-07-05
    spring 开发技术 日志
  • 一步步教你如何用PHP开发新闻发布网站
    随着互联网的普及和快速发展,新闻发布网站成为了人们获取新闻资讯的重要渠道。而PHP作为一种强大的服务器端编程语言,被广泛应用于网站开发之中。本文将一步步教你如何用PHP开发一个新闻发布网站。设计数据库结构在开始编写代码之前,需要先设计数据库...
    99+
    2023-10-27
    开发 PHP 新闻发布网站
  • 一文教你如何使用Python绘制瀑布图
    目录前期准备方法一:waterfall_ax方法二:waterfall_chart方法三:plotly什么是瀑布图?瀑布图用表达两个数值之间的变化过程,过程值为正的时候,向上加,过程...
    99+
    2023-05-16
    Python绘制瀑布图 Python 瀑布图
  • 用PYTHON写一个应用程序并发布exe
    1.安装PYTHON3.4.3 2.安装cx_freeze 3.安装cx_freeze补丁  C:\Python34\Scripts>pip.exe install f:\F_pan\cx_Freeze-4.3.4-cp34-non...
    99+
    2023-01-31
    应用程序 PYTHON exe
  • 如何将自己的python代码发布在pip install给别人使用你知道吗
    目录1.编写模块结构1.1 git创建空文件1.2 编写包功能函数1.3 包必备函数1、README.md文件是在git上生成的说明项目的文件2、setup.py文件内容3、lici...
    99+
    2024-04-02
  • Kubernetes如何实现前后端应用的金丝雀发布
    这篇文章主要讲解了“Kubernetes如何实现前后端应用的金丝雀发布”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Kubernetes如何实现前后端应用的金丝雀发布”吧!Deploymen...
    99+
    2023-06-21
  • springBoot+dubbo+zookeeper如何实现分布式开发应用
    小编给大家分享一下springBoot+dubbo+zookeeper如何实现分布式开发应用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!环境搭建项目结构图:1.我们首先做好服务端pom.xml  &n...
    99+
    2023-06-29
  • Python爬虫的并发编程如何应用
    这篇文章主要讲解了“Python爬虫的并发编程如何应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python爬虫的并发编程如何应用”吧!什么是并发编程并发编程是指在一个时间段内,能够执行...
    99+
    2023-07-06
  • Spring 分布式应用开发中,Python 与 JavaScript 有何异同?
    随着互联网和移动互联网的快速发展,分布式应用成为了现代软件开发的主流。Spring 框架是目前最流行的 Java 框架之一,其在分布式应用开发中发挥着重要的作用。然而,与 Java 不同,Python 和 JavaScript 也在分布式...
    99+
    2023-08-06
    spring 分布式 javascript
  • 怎么发布打包并发布自己的Android应用(APP)
    第一步,在Eclipse中选择需要打包的项目,然后右键--选择Export,会弹出一个打包的提示框,如下图所示。 按Next之后,会继续出现一个提示框,这里你可以选择自己需要...
    99+
    2022-06-06
    并发 app Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作