1. 程式人生 > >Windows 下 Python 3.6 下安裝 TensorFlow (屢敗屢戰)

Windows 下 Python 3.6 下安裝 TensorFlow (屢敗屢戰)

plot global install sim can 版本 結果 codec error:

事情是這樣的,好不容易找到了【含代碼而不止代碼】的教程:


  (知乎回答)


  但是我用的是windows,還是win7,怎麽辦?有代碼就好說,代碼裏不是有“from keras……”嘛,二話不說,pip!(感謝官方安裝包自帶的pip)

pip install -U keras


  然後華華麗麗的出錯了,最後一行是這樣的:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 3: invalid start byte


  我用的Powershell,滿屏的紅色報錯。但是查了查發現可以改pip程序,那個教程在哪裏忘了,講的是__init__文件中有個utf-8要改成gbk,但是那個教程是針對anaconda的,我可是堂堂正正從官網下的python……巧的是報錯代碼裏也有個__init__文件(連行號都有!),那就改那裏好了……(下面是紅字的前幾行)

Exception:
Traceback (most recent call last):
    File "c:\users\administrator\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__ .py, line 73, in console_to_str
        return s.decode(sys.__stdout__.encoding)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 3: invalid start byte


  簡單修改——

原來的代碼:

            return s.decode(sys.__stdout__.encoding)

修改後的代碼:

            ###return s.decode(sys.__stdout__.encoding)    (原版當成註釋,天知道以後會不會改回來)
            return s.decode('gbk')


  重新執行命令:

pip install -U keras


  成功!哈哈哈我真是個天才……


  第二個import的是叫……“matplotlib”……

pip install matplotlib


  忘記加-U了,不過似乎沒什麽可update,也罷。一次成功。(之前的改動不影響別的安裝的啊?)


  試著運行了一下代碼,結果第一行就報錯,在 keras 的導入裏,竟然還有包括了個導入 import TensorFlow …… (果然是TensorFlow的教程,我說怎麽還沒裝它)

pip install tensorflow


  我已經不想再現當時的情況了。大致的回應很簡單:pip沒有找到TensorFlow 。於是我上網查,說可以把命令裏的tensorflow換成.whl文件的網址,換了幾次都說沒有,終於有一次說找到了,但是版本不匹配……


  這實在是匪夷所思的事,https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.2.1-cp36-cp36m-win_amd64.whl,畢竟cp36是python3.6,64是64位,windows文件夾說明是windows系統,既然這個文件存在,那我就該能用啊?之前看到說TensorFlow只支持py3.5以上 + 64位……慢著!


  我想起來了,我當年下python點的是官網最醒目的下載按鈕,那是默認32位的!我用64位機裝了32位python!趕緊去下64位的python,安裝的時候連覆蓋提示都沒有。然後(很不情願地)重啟電腦——

pip list


  在此之前,我也用過這個命令,第三方庫占了一條多屏幕。而現在,只剩下了pip和setuptools,我裝的庫都沒了,恍如一場大夢。

  另外還給了警告,查了下便在C:\Users\Administrator下建了個pip文件夾,往裏寫了一個pip.ini :

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/  
[install]
trusted-host=mirrors.aliyun.com 

[list]
format=columns


  前一部分是用阿裏雲鏡像pip,另一部分是list命令給出默認值。於是再次——

pip install tensorflow


  文件找到了,但還是報錯:

Unknown requires Python '>=2.6, <3' but the running Python is 3.6.4


  但這個錯誤很快查到了解決,使用如下命令:(pip命令和pip3命令是一回事,可以混用)

pip3 install futures==3.1.1


  再次 pip install tensorflow, 成功。


  真(他媽)感人。


  (然而作為AMD顯卡用戶,沒有用GPU。我的另一臺電腦是NVIDIA,32位win7 。這臺的CPU是傳說中不可打遊戲的G4560,另一臺反正比這個還差得多)


  (2018-2-1 於地球)

Windows 下 Python 3.6 下安裝 TensorFlow (屢敗屢戰)