“未找到导入 tensorflow 模块”仅在 jupyter 笔记本上,但不在 jupyter 实验室或终端上

Posted

技术标签:

【中文标题】“未找到导入 tensorflow 模块”仅在 jupyter 笔记本上,但不在 jupyter 实验室或终端上【英文标题】:"Importing tensorflow module not found" Only on jupyter notebook but not jupyter lab or terminal 【发布时间】:2021-06-24 03:22:36 【问题描述】:

我启动 powershell anaconda 提示符并为新项目激活环境。然后我使用tensorflow网站pip install tensorflow提供的命令安装tensorflow。

为了验证安装是否成功,我从终端中打开 python 并导入 tensorflow:

> python
Python 3.7.10 (default, Feb 26 2021, 13:06:18) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> tf
<module 'tensorflow' from 'C:\\Users\\myname\\Anaconda3\\envs\\test_env\\lib\\site-packages\\tensorflow\\__init__.py'>

一切似乎都正常,我继续启动一个 jupyter 笔记本并在新单元格中执行导入。但是,当我运行单元格 import tensorflow 时,我收到以下错误:

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-3-d6579f534729> in <module>
----> 1 import tensorflow

ModuleNotFoundError: No module named 'tensorflow'

为了仔细检查,我关闭了 jupyter notebook 会话,然后启动了一个 jupyter 实验室会话——所有这些都来自同一个 Anaconda powershell 终端,并激活了正确的环境。当我在 jupyterlab 下运行 import 语句时,一切正常。

发生了什么事?

    为什么 import 语句在终端和 jupyter lab 下有效 为什么它在 jupyter notebook 中不起作用? 如何解决?

[编辑:]

在 jupyter 实验室和笔记本上,我都运行了命令 !conda info,可以确认安装 tensorflow 的环境确实处于活动状态。

【问题讨论】:

前段时间学了一个技巧,看看能不能用。在你的 jupyter notebook 上,import sys!sys.executable -m pip install tensorflow,或者 conda install,随便你。这能解决您的问题吗?这些问题有时很难确定。例如看这个问题:***.com/questions/65419543/… 另外,您的 conda 环境是否正确激活?如果不是,我相信它有时会出现导入问题。 我相信我正确激活了环境。我打开终端并运行“conda activate ”。也检查我帖子中的编辑。 【参考方案1】:

按照以下步骤使用 PIP 在虚拟环境中安装 Tenosrflow

#Install virtualenv
sudo pip3 install virtualenv
#Create virtual environment name: venv
virtualenv venv
#Activate venv
source venv/bin/activate
#Install tensorflow
venv$ pip3 install tensorflow
#Install Jupyter notebook
venv$ pip3 install notebook
# Launch jupyter notebook
venv$ jupyter notebook

【讨论】:

以上是关于“未找到导入 tensorflow 模块”仅在 jupyter 笔记本上,但不在 jupyter 实验室或终端上的主要内容,如果未能解决你的问题,请参考以下文章

Scala:代码仅在调试时运行(#ifdef 等效?)

Android Studio 4.1 插件错误:插件 * 不兼容(仅在 IntelliJ IDEA 中支持)

如何仅在 Jenkins 上为一个子模块执行包?

ArrayFormula 仅在整个列中迭代第一个值,需要所有符合条件的值

纪中集训2019.3.12Mas的仙人掌

回发后jquery datepicker不起作用