上篇讲到 pyinstaller打包exe太大的问题

那既然pyinstaller这么麻(nan)烦(yong) 那为什么不找一种方法代替它呢?

经过多方面打听,一位道上的盆友告诉了我一个惊天大秘密

python有embedded版本

b198e95bc22e583215d8f570560cb35c.png

当我看完了官方的文档以后。。。我的表情是这样的

537cad969962d6ad11e4844d200e8cd1.png

惊喜&惊喜&惊喜&惊喜 像发现了新大陆一样

python37的embedded版本

因为64位exe可能不支持32位系统 反其道而行之直接选32位就完事了

7f3f3e1f0071cb4132da3c2ded9c0c96.png

7926610a2b48073ceb93ad382beda280.png

11.5M 很良心有没有!!

然后解压这个.zip压缩包就可以当作一个迷你python正常使用了!

再也不用费尽心机让“聪明”的用户们安装令人头大的python并且加入path了

让我们试一下!

a1542febd3dceaad2a761286520a82a8.png

嗯···不错不错 味道好极了(真香)

看来问题不大!那么我们该如何调用这个特殊版本的迷你python呢?

请注意:如果您的电脑上存在完整的python环境并且已经加入了PATH当中 直接用cmd调用python像这样:

1fa5bf0abd02d49ef1c80cc995285a91.png

调用的仍然是存在于PATH当中的完整的python环境

正确打开方式:把embedded-python.exe的完整路径加上 像这样:

6eb51003c089be77910139ae6b79c3aa.png

那么问题来了 如何让我们写的.py运行在指定的环境之上呢?

它笨我们不笨啊 这时候就有必要祭出伟大的命令行工具了 比如vbs啊bat啊

windows的福音啊

开整!

比如我写了一个test.py 想要用embedded python运行:

982e02f0044a9bfaf1545dd76fa26c47.png

完美!

embedded-python:知道我的厉害了吧

强制但是:[思考··] 如果这个embedded-python只提供基础的库 那我要用到matplotlib Pillow怎么办? pip?

4d6fd64cea8b89e9f4821a9e37cac4e3.png

事实证明 没有pip!!!

下面我们讲如何给embedded-python安装pip

以及使用pip安装必要库~

-EOF- 高产似那啥??不存在的

上篇我们讲到embedded版本的基础操作

可是却没有办法用pip安装必要的库

去看一下官方文档怎么说的

嗯。。。不支持 不光如此,Tcl/tk也是不给你滴。。。

可是谁甘心只用标准库敲代码?卒都不知道怎么卒的···

关键是他,,,他掉头发呀

9d79fb80a1338550e414f6d5687cd6eb.png

程序猿(媛)们再一次发挥聪明才智,把pip塞进去了

51679802ca6c60046a4be7211ad79458.png

Step 1

下载python-embedded(废话嘛这不是)

Step 2

解压缩 =w=

Step 3

找到自己python-embedded文件夹下的python37.pth(如果你下载的是27版本那当然就是python27._pth啦)

用记事本打开-w-(我管你用什么 你能打开就行了)

把# import site前面的注释符号“#”删除——保存

python37.zip

.

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

6fb6c7fc92daef0927040a8855086259.png

Step 4

去官网下载get-pip.py

别去给我全选--复制哈 复制我会打人的(全选一年也全选不完的说)

正确打开方式:

4390bd427900f8973872ac93907fe959.png

保存到你的python-embedded文件夹下

Step 5

用cmd cd到python-embedded文件夹下

记得带上python-embedded的完整路径 比如我解压在F:\python-3.7.3-embed-win32

就需要这么写:

F:\python-3.7.3-embed-win32\python.exe get-pip.py

4c8e7186f4b2d6a13bded279f1fdc25f.png

至此 pip已经塞到了python-embedded里面 与此同时setuptools&wheel也安装完成

意味着:我们可以升级&安装.whl库啦

Step 6

用cmd cd到python-embedded\Scripts文件夹下

记得带上完整路径!比如:

F:\python-3.7.3-embed-win32\Scripts\pip.exe install xxx

df2a1d863cf958c69b61a1ff07b504f1.png

.whl文件同理啦

F:\python-3.7.3-embed-win32\Scripts\pip.exe install xxx.whl

确保第三步已经完成!

否则会报错:

>>F:\python-3.7.3-embed-win32\Scripts\pip.exe install pypercilp

Traceback (most recent call last):

File "D:\obj\Windows-Release\37win32_Release\msi_python\zip_win32\runpy.py", line 193, in _run_module_as_main

File "D:\obj\Windows-Release\37win32_Release\msi_python\zip_win32\runpy.py", line 85, in _run_code

File "F:\python-3.7.3-embed-win32\Scripts\pip.exe\__main__.py", line 5, in

ModuleNotFoundError: No module named 'pip'

这样我们就完成了pip的安装&简单模块使用pip安装

原文:

但是···等等···!像官方文档说的:Tk不提供 并且牵扯到的tcl也不提供的情况下

我们怎么把tkinter安装在embedded版本里呢????

3b6a4ffba6f73e7fb788ca4044d1d8ed.png

下期我们讲Tk&tcl在python-embedded里的安装方法!

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐