我的Python版本是2.7.13。
我在Jupyter Notebook中运行以下代码。
首先,我安装了这些包
%%bash
pip uninstall -y google-cloud-dataflow
pip install --upgrade --force tensorflow_transform==0.15.0 apache-beam[gcp]然后,
%%bash
pip freeze | grep -e 'flow\|beam'我可以看到已经安装了tensorflow-transform包。
apache-beam==2.19.0
tensorflow==2.1.0
tensorflow-datasets==1.2.0
tensorflow-estimator==2.1.0
tensorflow-hub==0.6.0
tensorflow-io==0.8.1
tensorflow-metadata==0.15.2
tensorflow-probability==0.8.0
tensorflow-serving-api==2.1.0
tensorflow-transform==0.15.0但是,当我尝试导入它时,出现了警告和错误。
WARNING:tensorflow:From /usr/local/lib/python2.7/dist-packages/tensorflow_estimator/python/estimator/api/_v1/estimator/__init__.py:12: The name tf.estimator.inputs is deprecated. Please use tf.compat.v1.estimator.inputs instead.
ImportErrorTraceback (most recent call last)
<ipython-input-3-26a4792d0a76> in <module>()
1 import tensorflow as tf
----> 2 import tensorflow_transform as tft
3 import shutil
4 print(tf.__version__)
ImportError: No module named tensorflow_transform经过一番调查,我想我对这个问题有了一些想法。我运行以下代码:
%%bash
pip show tensorflow_transform| grep Location这是输出
Location: /home/jupyter/.local/lib/python3.5/site-packages我试图通过将/home/jupyter/.local/lib/python3.5/site-packages添加到$PATH的开头来修改$PATH。但是,我仍然无法导入tensorflow_transform。
基于以上和以下信息,我认为,当我运行import命令时,它执行的是Python 2.7,而不是Python 3.5
import sys
print('\n'.join(sys.path))
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
/usr/local/lib/python2.7/dist-packages/IPython/extensions
/home/jupyter/.ipython另外,
import sys
sys.executable
'/usr/bin/python2'我认为问题出在/home/jupyter/.local/lib/python3.5/site-packages.中安装了tensorflow_transform包但是当我运行“导入”时,它会转到/usr/local/lib/python2.7/dist-packages来搜索包,而不是/home/jupyter/.local/lib/python3.5/site-packages,,所以即使更新$PATH也无济于事。我说的对吗?
我试着升级我的python,但是
%%bash
pip install upgrade python
Defaulting to user installation because normal site-packages is not writeable然后,我添加了--user。看起来python并没有真正升级。
%%bash
pip install --user upgrade python
%%bash
python -V
Python 2.7.13有什么解决方案吗?
发布于 2020-04-06 18:34:10
在我看来,你的jupyter笔记本没有使用正确的python环境。也许,您安装了3.5版的软件包,但Notebook使用的是另一个版本,因此无法找到该库
你可以通过点击:Python(你的版本)-左下角选择另一个解释器。
VS-Code - Select Python Environment 1
不过,您也可以通过以下方式执行此操作:
CNTRL+SHIFT+P >选择Python解释器启动Jupyter Server
如果这不起作用,请确保您尝试导入的包安装在正确的python环境下。
如果未打开终端,请使用以下命令激活环境并进行安装:
pip安装包名称
例如,我在这里做了同样的事情:(注意:我使用的是蟒蛇) installing tensorflow_transform
安装完成后,您可以直接将其导入到代码中,如下所示:importing tensorflow_transform
https://stackoverflow.com/questions/60550646
复制相似问题