如何解决VS Code Python 交互窗口无法导入`rasterio`
我最近在 Linux 上将 VS Code 更新到了 1.53.2(elementaryOS 专门使用 snap
)。尝试在交互窗口中运行现有 Python 脚本时,出现错误 ModuleNotFoundError: No module named 'rasterio'
,因此很明显它没有找到 rasterio
模块。我使用的是 Conda 环境,并且已经确认环境中确实安装了 rasterio,并且我在 VS Code 中选择了合适的环境。
从终端使用交互式 Python、从终端调用脚本、在本地 Jupyter 服务器中运行命令,甚至在 VS Code 中的运行和调试模式下,模块都被正确导入。因此,我认为问题与 VS Code 中使用的 Jupyter 服务器有关。我看过的所有其他模块都很好导入,所以这似乎是 VS Code 中的一些问题,特别是 rasterio
包。使用交互式窗口时,即使只是运行简单的命令
import rasterio as rio
失败,再次仅在 VS Code Python 交互式窗口中,在其他任何地方都没有。有任何想法或建议或解决方法,还是我应该在 VS Code Github 存储库中提交问题?
如果有帮助,这里是来自基本 conda 环境(仅安装了 python3、jupyter 和 rasterio)的已安装模块列表,其中 import rasterio
失败:
name: scratch
channels:
- conda-forge
- defaults
dependencies:
- _libgcc_mutex=0.1=conda_forge
- _openmp_mutex=4.5=1_gnu
- affine=2.3.0=py_0
- argon2-cffi=20.1.0=py39h3811e60_2
- async_generator=1.10=py_0
- attrs=20.3.0=pyhd3deb0d_0
- backcall=0.2.0=pyh9f0ad1d_0
- backports=1.0=py_2
- backports.functools_lru_cache=1.6.1=py_0
- bleach=3.3.0=pyh44b312d_0
- boost-cpp=1.74.0=hc6e9bd1_2
- bzip2=1.0.8=h7f98852_4
- c-ares=1.17.1=h36c2ea0_0
- ca-certificates=2020.12.5=ha878542_0
- cairo=1.16.0=h7979940_1007
- certifi=2020.12.5=py39hf3d152e_1
- cffi=1.14.5=py39he32792d_0
- cfitsio=3.470=hb418390_7
- click=7.1.2=pyh9f0ad1d_0
- click-plugins=1.1.1=py_0
- cligj=0.7.1=pyhd8ed1ab_0
- curl=7.71.1=he644dc0_8
- dbus=1.13.6=hfdff14a_1
- decorator=4.4.2=py_0
- defusedxml=0.6.0=py_0
- entrypoints=0.3=pyhd8ed1ab_1003
- expat=2.2.10=h9c3ff4c_0
- fontconfig=2.13.1=hba837de_1004
- freetype=2.10.4=h0708190_1
- freexl=1.0.5=h516909a_1002
- geos=3.9.0=h9c3ff4c_0
- geotiff=1.6.0=h2b14fbe_4
- gettext=0.19.8.1=h0b5b191_1005
- giflib=5.2.1=h36c2ea0_2
- glib=2.66.7=h9c3ff4c_0
- glib-tools=2.66.7=h9c3ff4c_0
- gst-plugins-base=1.18.3=h04508c2_0
- gstreamer=1.18.3=h3560a44_0
- hdf4=4.2.13=h10796ff_1004
- hdf5=1.10.6=nompi_h6a2412b_1114
- icu=68.1=h58526e2_0
- importlib-metadata=3.4.0=py39hf3d152e_0
- importlib_metadata=3.4.0=hd8ed1ab_0
- ipykernel=5.5.0=py39hef51801_1
- ipython=7.20.0=py39hef51801_2
- ipython_genutils=0.2.0=py_1
- ipywidgets=7.6.3=pyhd3deb0d_0
- jedi=0.18.0=py39hf3d152e_2
- jinja2=2.11.3=pyh44b312d_0
- jpeg=9d=h36c2ea0_0
- json-c=0.15=h98cffda_0
- jsonschema=3.2.0=py_2
- jupyter=1.0.0=py39hf3d152e_6
- jupyter_client=6.1.11=pyhd8ed1ab_1
- jupyter_console=6.2.0=py_0
- jupyter_core=4.7.1=py39hf3d152e_0
- jupyterlab_pygments=0.1.2=pyh9f0ad1d_0
- jupyterlab_widgets=1.0.0=pyhd8ed1ab_1
- kealib=1.4.14=he4dc956_1
- krb5=1.17.2=h926e7f8_0
- ld_impl_linux-64=2.35.1=hea4e1c9_2
- libblas=3.9.0=8_openblas
- libcblas=3.9.0=8_openblas
- libclang=11.0.1=default_ha53f305_1
- libcurl=7.71.1=hcdd3856_8
- libdap4=3.20.6=hd7c4107_1
- libedit=3.1.20191231=he28a2e2_2
- libev=4.33=h516909a_1
- libevent=2.1.10=hcdb4288_3
- libffi=3.3=h58526e2_2
- libgcc-ng=9.3.0=h2828fa1_18
- libgdal=3.1.4=hbde00c8_6
- libgfortran-ng=9.3.0=hff62375_18
- libgfortran5=9.3.0=hff62375_18
- libglib=2.66.7=h1f3bc88_0
- libgomp=9.3.0=h2828fa1_18
- libiconv=1.16=h516909a_0
- libkml=1.3.0=h02e6976_1012
- liblapack=3.9.0=8_openblas
- libllvm11=11.0.1=hf817b99_0
- libnetcdf=4.7.4=nompi_h56d31a8_107
- libnghttp2=1.43.0=h812cca2_0
- libopenblas=0.3.12=pthreads_h4812303_1
- libpng=1.6.37=h21135ba_2
- libpq=13.1=hfd2b0eb_1
- librttopo=1.1.0=hccdd1c9_5
- libsodium=1.0.18=h36c2ea0_1
- libspatialite=5.0.1=h04c9dda_2
- libssh2=1.9.0=hab1572f_5
- libstdcxx-ng=9.3.0=h6de172a_18
- libtiff=4.2.0=hdc55705_0
- libuuid=2.32.1=h7f98852_1000
- libwebp-base=1.2.0=h7f98852_0
- libxcb=1.13=h7f98852_1003
- libxkbcommon=1.0.3=he3ba5ed_0
- libxml2=2.9.10=h72842e0_3
- lz4-c=1.9.3=h9c3ff4c_0
- markupsafe=1.1.1=py39h3811e60_3
- mistune=0.8.4=py39h3811e60_1003
- mysql-common=8.0.23=ha770c72_1
- mysql-libs=8.0.23=h935591d_1
- nbclient=0.5.2=pyhd8ed1ab_0
- nbconvert=6.0.7=py39hf3d152e_3
- nbformat=5.1.2=pyhd8ed1ab_1
- ncurses=6.2=h58526e2_4
- nest-asyncio=1.4.3=pyhd8ed1ab_0
- notebook=6.2.0=py39hf3d152e_0
- nspr=4.29=h9c3ff4c_1
- nss=3.62=hb5efdd6_0
- numpy=1.20.1=py39hdbf815f_0
- openjpeg=2.4.0=hf7af979_0
- openssl=1.1.1j=h7f98852_0
- packaging=20.9=pyh44b312d_0
- pandoc=2.11.4=h7f98852_0
- pandocfilters=1.4.2=py_1
- parso=0.8.1=pyhd8ed1ab_0
- pcre=8.44=he1b5a44_0
- pexpect=4.8.0=pyh9f0ad1d_2
- pickleshare=0.7.5=py_1003
- pip=21.0.1=pyhd8ed1ab_0
- pixman=0.40.0=h36c2ea0_0
- poppler=0.89.0=h2de54a5_5
- poppler-data=0.4.10=0
- postgresql=13.1=h6303168_1
- proj=7.2.0=h277dcde_2
- prometheus_client=0.9.0=pyhd3deb0d_0
- prompt-toolkit=3.0.16=pyha770c72_0
- prompt_toolkit=3.0.16=hd8ed1ab_0
- pthread-stubs=0.4=h36c2ea0_1001
- ptyprocess=0.7.0=pyhd3deb0d_0
- pycparser=2.20=pyh9f0ad1d_2
- pygments=2.8.0=pyhd8ed1ab_0
- pyparsing=2.4.7=pyh9f0ad1d_0
- pyqt=5.12.3=py39hf3d152e_7
- pyqt-impl=5.12.3=py39h0fcd23e_7
- pyqt5-sip=4.19.18=py39he80948d_7
- pyqtchart=5.12=py39h0fcd23e_7
- pyqtwebengine=5.12.1=py39h0fcd23e_7
- pyrsistent=0.17.3=py39h3811e60_2
- python=3.9.2=hffdb5ce_0_cpython
- python-dateutil=2.8.1=py_0
- python_abi=3.9=1_cp39
- pyzmq=22.0.3=py39hea8fd45_0
- qt=5.12.9=hda022c4_4
- qtconsole=5.0.2=pyhd8ed1ab_0
- qtpy=1.9.0=py_0
- rasterio=1.2.0=py39hb73aa6c_0
- readline=8.0=he28a2e2_2
- send2trash=1.5.0=py_0
- setuptools=49.6.0=py39hf3d152e_3
- six=1.15.0=pyh9f0ad1d_0
- snuggs=1.4.7=py_0
- sqlite=3.34.0=h74cdb3f_0
- terminado=0.9.2=py39hf3d152e_0
- testpath=0.4.4=py_0
- tiledb=2.2.4=hb9a9e87_0
- tk=8.6.10=h21135ba_1
- tornado=6.1=py39h3811e60_1
- traitlets=5.0.5=py_0
- tzcode=2021a=h7f98852_0
- tzdata=2021a=he74cb21_0
- wcwidth=0.2.5=pyh9f0ad1d_2
- webencodings=0.5.1=py_1
- wheel=0.36.2=pyhd3deb0d_0
- widgetsnbextension=3.5.1=py39hf3d152e_4
- xerces-c=3.2.3=h9d8b166_2
- xorg-kbproto=1.0.7=h7f98852_1002
- xorg-libice=1.0.10=h516909a_0
- xorg-libsm=1.2.3=h84519dc_1000
- xorg-libx11=1.6.12=h516909a_0
- xorg-libxau=1.0.9=h7f98852_0
- xorg-libxdmcp=1.1.3=h7f98852_0
- xorg-libxext=1.3.4=h516909a_0
- xorg-libxrender=0.9.10=h516909a_1002
- xorg-renderproto=0.11.1=h14c3975_1002
- xorg-xextproto=7.3.0=h7f98852_1002
- xorg-xproto=7.0.31=h7f98852_1007
- xz=5.2.5=h516909a_1
- zeromq=4.3.4=h9c3ff4c_0
- zipp=3.4.0=py_0
- zlib=1.2.11=h516909a_1010
- zstd=1.4.8=ha95c52a_1
prefix: /home/durbank/miniconda3/envs/scratch
解决方法
问题显然在于 VS Code 本身存在错误,如 this Issue 中所示,其中启动 Python 交互式窗口时加载了错误的环境。 问题解决后,我会更新此答案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。