gpt4 book ai didi

Python 3 虚拟环境 - 不存在的包

转载 作者:行者123 更新时间:2023-12-01 09:23:55 25 4
gpt4 key购买 nike

我正在尝试创建一个虚拟环境来限制我正在创建的 exe 文件的大小。但是,当我创建虚拟环境时,它似乎仍然添加了我在该环境中未安装的软件包。

我尝试做一个非常小的测试文件,在其中导入 numpy:

import numpy as np
A = np.array([0,0,1])
print(A)

当我创建虚拟环境并从cmd运行脚本时,它发现环境中没有安装numpy,但是当我使用pyinstaller将测试脚本制作成exe文件时,无论如何它都会将numpy混合到其中...我在这里有我的整个 cmd 过程:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\MRCH>Virtualenv test_env
Using base prefix 'c:\\anaconda3'
New python executable in C:\Users\MRCH\test_env\Scripts\python.exe
Installing setuptools, pip, wheel...done.

C:\Users\MRCH>test_env\scripts\activate

(test_env) C:\Users\MRCH\dist>pip list
Package Version
---------- -------
pip 10.0.1
setuptools 39.2.0
wheel 0.31.1

(test_env) C:\Users\MRCH>python test.py
Traceback (most recent call last):
File "test.py", line 1, in <module>
import numpy as np
ModuleNotFoundError: No module named 'numpy'

(test_env) C:\Users\MRCH>pyinstaller test.py -y -F
454 INFO: PyInstaller: 3.3.1
...
132266 INFO: Appending archive to EXE C:\Users\MRCH\dist\test.exe
132473 INFO: Building EXE from out00-EXE.toc completed successfully.

(test_env) C:\Users\MRCH>cd dist

(test_env) C:\Users\MRCH\dist>test.exe
[0 0 1]

(test_env) C:\Users\MRCH\dist>

我做错了什么?

最佳答案

来自 pyinstaller docs pyinstaller 分析导入语句以收集依赖项。

您的问题似乎来自 pyinstaller 在 anaconda 目录中查找包。您需要像这样显式排除包:

pyinstaller test.py -y -F --exclude numpy

或者创建一个与 anaconda 分开的新虚拟环境,例如 this answer建议。

关于Python 3 虚拟环境 - 不存在的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50600378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com