我想用某个特定的版本(3.11.6)运行脚本,因为torch这个库暂时不支持python3.12。
但我用3.12版本作为主力,所以用virtualenv虚拟了一个环境。
问题是每次运行torch的程序都要进入这个虚拟环境,而我需要用传参的形式调用脚本,如:
python3.11.6 myscript.py -d "xxx"
给第三方程序调用的
之前想打包成exe,但pyinstaller问题太多,不会用,缺各种我没导入过的包(应该是使用的包依赖的),弄了一晚上还是不行,缺太多。放弃了。
那么,我能直接用3.11.6版本的python打开脚本吗?并保证运行正常?
最好能打包进一个文件夹使用
谢谢
如果你是用的linux系统,可能直接用docker会是一个比较好的选择。
其实我觉得你可以直接去下载embed版的python,不是安装版的python。
下载了之后解压,直接执行里面的python.exe,配合一个bat脚本,就能满足你的需求(打包进一个文件夹)。
具体步骤:
下载 https://www.python.org/ftp/python/3.11.6/python-3.11.6-embed-...
然后解压 D:/yourapp/。
然后下载 https://bootstrap.pypa.io/get-pip.py 到一个位置,和执行安装pip


编辑 python311._pth 这个文件,取消这里的注释

用pip安装你的依赖包。

然后准备你的代码,忽略这里的伪代码。。。

以及这个bat脚本;
最后的效果就是:

现在你可以的把 yourapp 这个文件夹复制到其他的电脑上运行了。