我开始使用虚拟环境,并且遇到了某种路径问题。
首先,我创建一个虚拟环境:
python -m venv conda-env
.\conda-env\Scripts\activate
(conda-env)出现在提示中。
现在我安装一个软件包:
pip install netcdf4
pip list
Package Version
---------- -------
cftime 1.1.3
netCDF4 1.5.3
numpy 1.19.0
pip 19.2.3
setuptools 41.2.0
一切都很好。现在,如果我启动控制台并尝试加载该模块,事情就会变得一团糟:
jupyter console
In [1]: import netCDF4
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-1-9588a3d4fb24> in <module>
----> 1 import netCDF4
ModuleNotFoundError: No module named 'netCDF4'
但是,如果我从site-packages目录运行控制台,则以下命令将正常运行。
cd .\conda-env\Lib\site-packages\
jupyter console
import netCDF4
edit1: 如果我在虚拟环境中安装了jupyter,就可以解决此问题。
pip install jupyter
我不明白。我需要为每个虚拟环境执行此操作吗?
edit2: 如果我直接使用python,而不是使用jupyter控制台,我不会遇到此问题。下面的代码在test.py带有一行import netCDF4的地方起作用。
python -m venv venv
./venv/Scripts/activate
pip install netCDF4
python test.py
编辑3 在Mac上,pip install jupyter无法解决问题。我很困惑。