python 嵌入式打包【保姆级文图教程】

python 嵌入式打包

嵌入式解决了什么问题?

我们有的时候写代码不是为了自己而写,而且是需要发给别人,比如别人拜托你帮忙写个什么文件批量重命名或者操作 excel 之类的,但是别人电脑上没有安装 python ,你想让一个小白安装 python 是一件麻烦事情不说,而且最终还可能各种报错

这个时候先全部打包好,弄成一个可以直接运行 exe 或者 bat,不管什么格式,总之对方拿到之后双击就能运行就是成功,我们的 pyinstaller 就是前面一种,但是 pyinstaller 打出来的包巨大无比,而且有的时候打包单文件还会报错

于是今天我们就来讲讲第二种,这一方法也是官方的推荐,官方看到我们使用 python 苦于打包,于是退出了嵌入式版本

什么是嵌入式?

嵌入式 python 是一个简化版的 python,这个版本的 python 省去了很多无用的东西,最终只留下一个非常精简的解释器,让其他电脑可以不用安装 python 也能执行 python ,这就是嵌入式的概念

你可以理解为完整的 python 是食堂,你需要各种等待才能拿到需要的东西, python 嵌入式更像是快餐,你没办法在 python 嵌入式里面开发(大部分情况下),但是好在能够打开就用

因为嵌入式需要一串启动咒语,所以我们一般是用 .bat 的方式来进行调用,方便新手能够一键启动,目前很火的 Ai 整合包也是采用同样的方法

如何安装嵌入式?

网上现在其实也有安装的教程, 但是不是特别详细,今天在这里完整的复述一遍,让小白能够一步步实现自己的打包梦

前往官网下载嵌入式

  1. 首先我们打开官网来到最新的官网页面https://www.python.org/
  2. 备注: 下载的页面排版更新了,如果你按老教程会找不到在什么地方

python 嵌入式打包【保姆级文图教程】
  1. 选择 Downloads 标签页,然后选择 Windows,点击

python 嵌入式打包【保姆级文图教程】
  1. 在屏幕中寻找带 embeddable 字眼的安装包,版本不受限制,不过最好和本地现有的安装版本一致
  2. (新手不要盲目安装3.10 +的版本,许多库都还没跟上最新版本,可能会导致少数库用不了)
  3. 如果不知道自己的 python 版本,可以在命令行中输入 python 即可看到

python 嵌入式打包【保姆级文图教程】

解压并配置嵌入式设置

我们现在从官方下载下来了嵌入式的版本,但是我们还需要进行一系列的配置我们才能够进行使用

  1. 解压

我们现在把刚刚下载的文件解压到一个地方

python 嵌入式打包【保姆级文图教程】
  1. 下载 get-pip.py

我们发现这个版本的 python 没有 lib,我们需要自行下载,下载的方式也很简单,前往https://bootstrap.pypa.io/get-pip.py,然后将所有内容拷贝下来,保存到同名的文件中

python 嵌入式打包【保姆级文图教程】

你可以选择直接另存网站,或者选择全选拷贝,最终效果是一样的

python 嵌入式打包【保姆级文图教程】
  1. 执行 get-pip.py

我们拷贝完成之后选择退出,然后在标题栏输入 cmd

python 嵌入式打包【保姆级文图教程】

在新打开的命令中输入 python get-pip.py

python 嵌入式打包【保姆级文图教程】

此时我们的目录中多出两个文件夹 LibScripts,我们后面会经常用到的只有 Lib 文件夹,我们在这里拷贝第三方的库

python 嵌入式打包【保姆级文图教程】
  1. 修改配置文件

我们现在打开 python39._pth,使用记事本或者 notepad++

python 嵌入式打包【保姆级文图教程】

可以看到刚刚打开的文件内容应该是这样的

python 嵌入式打包【保姆级文图教程】

去掉最后一行的注释

#import site
变成
import site

python 嵌入式打包【保姆级文图教程】

到此为止,我们的安装和配置就结束了,接下来我们来介绍一下怎么使用

如何安装新的模块

切换到我们的 Scripts 文件夹里面,里面应该有一个 pip.exe 文件,这个时候在导航栏里面输入 cmd 打开控制台,然后正常的 pip 即可,最终文件会被安装到当前嵌入式环境的 Lib\site-packages

python 嵌入式打包【保姆级文图教程】

如何运行

在包含 python.exe 的主要目录下,打开在导航栏里面输入 cmd 打开控制台,然后输入 python 即可

python 嵌入式打包【保姆级文图教程】

或者您可以把这个路径添加到系统环境变量中,这样也可以很方便的进行使用

Original: https://www.cnblogs.com/BEMAKE/p/16806999.html
Author: 271374667
Title: python 嵌入式打包【保姆级文图教程】

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/684742/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • java 异常类与自定义异常

    目录 异常类 Exception 类的层次 throws/throw 关键字: throws: throw: try catch finally语句 声明自定义异常 异常类 在 J…

    技术杂谈 2023年6月21日
    0120
  • Kafka 生产者

    一个消息系统说白了无非就是由三部分组成,不同的消息系统只是这三部分的实现不同,或者会在这三部分之外扩充自己的特性。这三部分分别就是:生产者、消费者、消息队列 这篇文章主要介绍的是 …

    技术杂谈 2023年7月24日
    081
  • HashMap详解

    HashMap详解 HashMap相关介绍 HashMap是Java中的比较常见的集合,主要存放的是键值对,以key-value的形式存储,不是线程安全的。它里面的存储的key和v…

    技术杂谈 2023年6月21日
    091
  • 【Golang】golang实现post请求发送form类型数据函数

    golang实现post请求发送form类型数据函数 //发送http post请求数据为form func PostForm(url string, data url.Value…

    技术杂谈 2023年6月1日
    079
  • 一篇文章带你全面读懂Android Backup

    前言 手机等智能设备是现代生活中的重要角色,我们会在这些智能设备上做登录账户,设置偏好,拍摄照片,保存联系人等日常操作。这些数据耗费了我们很多时间和精力,对我们而言极为重要。 如果…

    技术杂谈 2023年7月11日
    073
  • tolua杂记

    1 字符串调用luaFunc :DoString public class CallLuaFunction : MonoBehaviour { private string scr…

    技术杂谈 2023年5月31日
    060
  • Python多继承 super 执行父类init

    今天学习多继承,遇到了super继承顺序的问题A是父类,BC继承A,D多继承BC class A: def __init__(self): print("A")…

    技术杂谈 2023年6月21日
    091
  • 虚拟机安装Centos7.5详细教程

    (3)选择操作系统Linux,版本为CentOS 7 64 位,点击下一步。 (4)定义虚拟机的名字,并设置虚拟机保存的地址,点击下一步。 (5)设置虚拟机的处理器信息,点击下一步…

    技术杂谈 2023年7月25日
    081
  • 数据处理不等式:Data Processing Inequality

    我是在差分隐私下看到的,新解决方案的可用性肯定小于原有解决方案的可用性,也就是说信息的后续处理只会降低所拥有的信息量。 那么如果这么说的话为什么还要做特征工程呢,这是因为该不等式有…

    技术杂谈 2023年5月31日
    067
  • PyQt5主窗口图标显示问题汇总

    窗口程序的开发流程如下: 先通过qt designer设置界面并将程序图标设置好,通过在designer中按ctrl + R 进行预览可以看到窗口左上角的图标,然后保存 通过pyu…

    技术杂谈 2023年7月11日
    070
  • Zookeeper-3.4.9安装

    环境: centos7 Zookeeper-3.4.9.tar.gz 官网下载 步骤 下载后上传压缩文件并解压 tar -zxvf zookeeper-3.4.9.tar.gz -…

    技术杂谈 2023年7月25日
    083
  • 面试官:请说出4种不使用第三方变量交换两个变量值的方法

    哈喽,大家好,我是阿Q。前几天有个小伙伴去面试,被面试官的一个问题劝退了:请说出几种不使用第三方变量交换两个变量值的方法。 问题有点绕,好不容易缕清了面试官的问题,却发现答不上来。…

    技术杂谈 2023年7月11日
    073
  • http和https的区别

    http协议和https协议的区别: 传输信息安全性不同、 连接方式不同、 端口不同、 证书申请方式不同 一、传输信息安全性不同 1、http协议:是超文本传输协议,信息是明文传输…

    技术杂谈 2023年5月31日
    082
  • 《Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Neural Networks》论文笔记

    1)提出了三种基于CNN的深度特征提取结构,用于提取HSI的光谱特征、空间特征和光谱-空间特征。所设计的三维CNN能有效提取光谱空间特征,具有较好的分类性能。 2)针对训练样本数量…

    技术杂谈 2023年6月21日
    084
  • rust 遇到的坑

    大小端 比较大小 Rc change 万水千山总是情, 领个红包行不行? 觉得还可以的话记的打赏哦^.^.. posted @2020-11-14 17:38 ma_fightin…

    技术杂谈 2023年5月31日
    099
  • 显微镜的基本光学原理及重要光学参数

    第一章:显微镜简史 随着科学技术的进步,人们越来越需要观察微观世界,显微镜正是这样的设备,它突破了人类的视觉极限,使之延伸到肉眼无法看清的细微结构。 显微镜是从十五世纪开始发展起来…

    技术杂谈 2023年5月31日
    073
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球