31
45

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Windows + Anaconda3 + Visual Studio Code でPython開発環境

Last updated at Posted at 2020-04-25

環境

  • Windows 10
  • Anaconda 2020.02

Anaconda のインストール

Anaconda公式サイトより、ダウンロード。
ここでは Anaconda3-2020.02-Windows-x86_64.exe を使用しています。

インストーラを実行し、Anaconda をインストールします。
注意点は特にありませんが、ここでは以下の設定としています。

  • Install for
    → All Users
  • Destination Folder ※Anacondaのインストール先
    → C:\ProgramData\Anaconda3
  • Advanced Options
    → いずれもチェックなし

Anaconda-Install_1.png
Anaconda-Install_2.png
Anaconda-Install_3.png

Anaconda の設定

環境変数の設定

これは設定必須ではありませんが、
デフォルトですと、Anaconda仮想環境はAnacondaのインストール先の配下に作成されます。
別のディレクトリに作成する場合は、環境変数「CONDA_ENVS_PATH」を追加します。
ここでは「D:\CondaEnvs」を指定しています。

Anaconda-EnvVar.png

Anaconda 仮想環境の作成

スタートメニューから Anaconda Navigator を起動します。

Anaconda-Start.png

「Environments」→「Create」を選択します。

AnacondaNavigator-CreateEnv_1.png

以下を指定し、「Create」をクリックして仮想環境を作成します。

項目 指定値
Name Python37 ※任意
Location D:\CondaEnvs\Python37
※環境変数「CONDA_ENVS_PATH」の設定と「Name」指定値により、上記が自動的に指定されます
Packages Python 3.7 を選択

AnacondaNavigator-CreateEnv_2.png

パッケージのインストール

コードのフォーマット、Lintのために以下のパッケージをインストールします。

  • autopep8
  • flake8
  • mypy

具体的には以下の手順を行います。

  1. 「Not installed」を選択
  2. 検索項目にパッケージ名を入力
  3. 検索結果のチェックボックスをチェック

AnacondaNavigator-AddPackage_1.png

ここでは上記パッケージの他、サンプルソース用に以下を追加しています。

  • numpy
  • matplotlib

「Selected」を選択してインストールされるパッケージを確認の上、「Apply」をクリックして、インストールを行います。

AnacondaNavigator-AddPackage_2.png

Visual Studio Code の設定

適当なディレクトリを切って、VSCode で開きます。
ここでは「D:\Temp\conda-test」としています。

VSCode-OpenVSCode.png

拡張機能の追加

以下の拡張機能を追加します。

  • Python(ms-python.python)

VSCode-PythonExtension.png

settings.json の設定

・ユーザーの設定

conda コマンドが PowerShell ではうまく動作しない(?)のと、
ワークスペースの設定だとまたまたうまく動作してくれない(?)ようなので、
コマンドプロンプトをデフォルトとするよう、ユーザー設定の settings.json にて以下を追加します。

[ユーザーホーム]\AppData\Roaming\Code\User\settings.json
{
    "terminal.integrated.shell.windows": "C:/WINDOWS/System32/cmd.exe",
}

・ワークスペースの設定

仮想環境等のパス設定、フォーマッター、Lint の設定を行います。

[ワークスペースフォルダ].vscode\settings.json
{
    // 拡張機能のロード時にターミナルでPython環境をアクティブにする。
    "python.terminal.activateEnvInCurrentTerminal": true,
    // 仮想環境のパス。作成した Anaconda仮想環境を指定する。
    "python.venvPath": "${env:CONDA_ENVS_PATH}/Python37",
    "python.autoComplete.extraPaths": [
        "${env:CONDA_ENVS_PATH}/Python37/Lib/site-packages",
    ],
    // Pythonコマンドのパス。作成した Anaconda仮想環境配下の python.exe を指定する。
    "python.pythonPath": "${env:CONDA_ENVS_PATH}/Python37/python.exe",
    // condaコマンドのパス。[Anacondaインストール先]/condabin/conda.bat を指定する。
    "python.condaPath": "C:/ProgramData/Anaconda3/condabin/conda.bat",
    // フォーマッターの設定。autopep8 を指定する。
    "python.formatting.provider": "autopep8",
    "python.jediEnabled": false,
    // Lintの設定。flake8、mypy を有効化する。
    "python.linting.flake8Enabled": true,
    "python.linting.mypyEnabled": true,
    "python.linting.pylintEnabled": false,
    // 以下はお好みで。
    "editor.formatOnSave": true,
    "python.autoComplete.addBrackets": true,
}

Anaconda Navigator から VSCode を起動する場合、
Anaconda仮想環境が自動的にアクティブ化されるので、
上記中の Pythonパスや仮想環境パスの設定は不要と思います。
エクスプローラ等から直接プロジェクトを開く場合はアクティブ化されないため、上記設定が必要となります。

実行

適当にPythonソースファイルを作ります。

VSCode-NewSource.png

test.py
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-np.pi, np.pi)
y = np.sin(x)
plt.plot(x, y)
plt.show()

設定がうまくいっていれば、ドキュメントの表示やコード補完、フォーマッター、Lint が効くはずです。

VSCode-ShowDocument.png
VSCode-CodeAssist.png

実行する場合は、「実行」パネルを開いて、
「launch.json ファイルを作成します」→ 「Python File」と選択します。

VSCode-Create-launch.json.png

勝手に .vscode/launch.json が作成され、Python用の実行構成が設定されます。

VSCode-Create-launch.json-3.png

後は、実行対象のソースを開いて、F5キー押下で実行されます。

VSCode-Execute.png

31
45
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
45

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?