前言:
這幾天尋思着在Linux下折騰一下Tensorflow,結果終端瘋狂地提示“ReadTimeOutError”之後,今天終於“村裏通網”成功裝上了。
1 關於"ReadTimeOutError"
安裝命令(pip3方式):
sudo pip3 install tensorflow
如果你在輸入命令後(包括類似pip3 install + 其他庫
的命令),下載過程中終端突然用大紅字的方式提示你ReadTimeOutError
,請你不要灰心,不是安裝命令有問題,極大可能是網不行(畢竟是國外服務器),請同志們發揚堅持不懈的長征精神,重試重試再重試,如果上天青睞 (ke lian)你,沒準你就成功了…來自一個安裝進度到了99%依舊報錯"ReadTimeOutError"過來人的忠告。
當然,這是笨方法,你也可以採取別的命令,比如直接使用國內鏡像等這些方式安裝。
接下來進入正題。
2 問題描述
成功安裝TensorFlow之後,進入python3,import,終端報錯:
ModuleNotFoundError: No module named ‘tensorflow’
3 原因分析
路徑不匹配問題,我的系統中同時安裝了python2與python3,並且python2爲主版本。因此需要配置tensorflow的路徑到sys.path中。
4 解決方法
1.進入python3,查看py3的安裝路徑:
python3
import sys
sys.path
注意到在tensorflow安裝過程中,系統提示tensorflow的安裝路徑也在 /usr/lib/python3/dist-packages
注:如果你沒有注意到在tensorflow安裝過程中提示的安裝路徑,建議你嘗試一下在鍵入sys.path命令後,根據我係統中的提示路徑匹配一下你係統中的路徑。
2.進入 /usr/lib/python3/dist-packages
,新建編輯.pth
文件(文件後綴名必須爲.pth,名字可任取,例如我的爲mypypath.pth):
cd /usr/lib/python3/dist-packages
sudo vi mypypath.pth
進入文件中,輸入路徑,並:wq
保存:
5 驗證
進入python3,import:
可以看到最初ModuleNotFoundError: No module named 'tensorflow'
的問題已經解決,但是又出現了新的問題:
TypeError : _ _new_ _() got an unexpected keyword argument 'serialized options'
如果你和我一樣,不幸出現了同樣的問題,請移步博客:
import tensorflow報錯TypeError: _ _new _ _() got an unexpected keyword argument ‘serialized_options’