TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

WindowsにAnaconda3でPython 3.6をインストールする

以前はChainerとTensorflowがPython3.6に対応していなかったため、Anaconda3のPython3.5系を使用していた。
現在は、ChainerもTensorflowもPython3.6に対応しているため、Python3.6に入れ替えを行った。

Anaconda | Individual Edition
から、Python 3.6 version(Anaconda3 5.0.1)をダウンロードして、インストールするだけだが、Python3.5系のAnaconda3 4.2.0との違いで戸惑った点を記載しておく。

スタートメニューに「Jupyter QTConsole」がなくなった

以前からWebベースのJupyer Notebookより、GUIで軽い「Jupyter QTConsole」を使用していた。
Anaconda3 5.0.1にしたところ、スタートメニューから「Jupyter QTConsole」がなくなってしまった。

対処

ファイル名を指定して実行から、「jupyter-qtconsole」を指定することで、起動できる。
f:id:TadaoYamaoka:20171027222241p:plain:w300

なお、裏でコマンドプロンプトが同時に起動するが気にしないようにする。

グラフがプロットできない

「Jupyter QTConsole」で、matplotlibでグラフを描画しようとしたら、

Out[2]: [<matplotlib.lines.Line2D at 0x1aa221a2550>]

とだけ表示されて、グラフが描画されない。

対処
%matplotlib

と入力すると、

Using matplotlib backend: Qt5Agg

と表示され、バックエンドが初期化されて描画できるようになる。

以下のようなスクリプトを実行すると、

import numpy as np
import matplotlib.pyplot as plt
x = np.arange(-3, 3, 0.1)
y = np.sin(x)
plt.plot(x, y)

別ウィンドウでグラフが表示される。
f:id:TadaoYamaoka:20171027215936p:plain:w300

cupyのインストールで、UnicodeDecodeErrorが発生

pipでcupyをインストールしようとすると以下のエラーが発生した。

>pip install cupy
Collecting cupy
  Using cached cupy-2.0.0.tar.gz
Exception:
Traceback (most recent call last):
  File "C:\Anaconda3\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 0x83 in position 0: invalid start byte

(省略)
対処

以下のページを参考に、「C:\Anaconda3\lib\site-packages\pip\compat\__init__.py」を修正した。
Win + Python3.6で「pip install」を実行したときに「UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83」と表示される。 - Qiita

修正後は正常にインストールできた。

※2018/4/23 追記
Anaconda 5.1で、pipをアップデートすると上記の問題が発生しなくなっていました。
Windows環境でもPython3.6が問題なく利用できるようになっています。