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/
    • 备注:下载的页面排版更新了,如果你按老教程会找不到在什么地方

image-20221019103253054

  1. 选择 Downloads 标签页,然后选择 Windows,点击

image-20221019103345590

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

image-20221019103542791

解压并配置嵌入式设置

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

  1. 解压

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

image-20221019103858883

  1. 下载 get-pip.py

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

image-20221019104122649

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

image-20221019104205096

  1. 执行 get-pip.py

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

image-20221019104331265

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

image-20221019104421825

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

image-20221019104501843

  1. 修改配置文件

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

image-20221019104624452

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

image-20221019104711690

去掉最后一行的注释

#import site
变成
import site

image-20221019104946258

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

如何安装新的模块

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

image-20221019143556682

如何运行

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

image-20221019143622839

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

  • 6
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
引用\[1\]: Stable Diffusion是一个基于Latent Diffusion Models(潜在扩散模型,LDMs)的文图生成(text-to-image)模型。Stable Diffusion在LAION-5B的一个子集上训练了一个Latent Diffusion Models,该模型专门用于文图生成。\[1\]引用\[2\]: 在潜在表示空间上做diffusion操作其主要过程和标准的扩散模型没有太大的区别,所用到的扩散模型的具体实现为time-conditional UNet。\[2\]引用\[3\]: 高分辨率图像合成的普及diffusion models属于基于似然的模型类,其模式覆盖行为使它们容易花费过多的容量(从而计算资源)来建模数据的难以察觉的细节。尽管重加权变分目标旨在通过对初始去噪步骤进行欠采样来解决这一问题,但diffusion models仍然需要计算量,因为训练和评估这样的模型需要在RGB图像的高维空间中反复进行函数评估(和梯度计算)。\[3\] 问题: Latent Diffusion Models是什么? 回答: Latent Diffusion Models(潜在扩散模型,LDMs)是一种用于文图生成的模型。在潜在表示空间上进行diffusion操作,其过程与标准的扩散模型类似。具体实现中使用了time-conditional UNet。这种模型的训练和评估需要在RGB图像的高维空间中进行函数评估和梯度计算,因此需要大量的计算资源。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [Latent Diffusion Models](https://blog.csdn.net/weixin_43135178/article/details/127972532)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值