【VS Code】Visual Studio Code ~ Pythonを設定する ~

■ はじめに

https://dk521123.hatenablog.com/entry/2019/10/20/230323

の続き。

VS CodeでPythonを使う上での設定方法について、記述する。

目次

【1】設定方法
 1)Visual Studio Codeのインストール
 2)Aanacondaのインストール
 3)Python拡張機能をインストール
 補足:UbuntuでのVS Code インストール
【2】オプション
 1)ダウングレード(Python 3.7 ⇒ 3.6)する場合
 2)仮想環境のデフォルトを設定するには
【3】その他
 1)コマンドライン引数を設定する

【1】設定方法

1)Visual Studio Codeのインストール
2)Aanacondaのインストール
3)Python拡張機能をインストール
補足)ダウングレード(Python 3.7 ⇒ 3.6)する場合

1)Visual Studio Codeのインストール

Visual Studio Codeダウンロードし
(今回「VSCodeUserSetup-x64-1.38.0.exe」)インストールする

https://code.visualstudio.com/

2)Aanacondaのインストール

Anacondaダウンロードし、
(今回「Anaconda3-2019.07-Windows-x86_64.exe」)
インストール(警告がでても、環境変数 PATH を通しておく)  

https://www.anaconda.com/distribution/#download-section

環境変数 Path を通し忘れたら...

[1] Anaconda がある場所を探す

[2] 環境変数 Path に以下を設定する
~~~~
 + C:\Users\<Your-UserName>\Anaconda3
 + C:\Users\<Your-UserName>\Anaconda3\Scripts
 + C:\Users\<Your-UserName>\Anaconda3\Library\bin
~~~~

補足:管理者権限がなかった場合

[Control Panel]-[User Accounts]-[Change my environment variables] から設定できる。
詳細は、以下のサイトを参照のこと。

https://did2memo.net/2017/03/15/windows-set-environment-variables-without-admin-auth/

3)Python拡張機能をインストール

Python拡張機能をインストールするために、[Shift+Ctrl+X]で
「拡張機能」を開き、検索バーに「Python」を入力すると
「Python」がヒットするので、「install」ボタン押下

補足:UbuntuでのVS Code インストール

https://qiita.com/yoshiyasu1111/items/e21a77ed68b52cb5f7c8

# を参考に、、、

# ダウンロード
sudo apt install curl
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg

# リポジトリを登録する
sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/
ls -l /etc/apt/trusted.gpg.d/

sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
ls /etc/apt/sources.list.d/

# インストール
sudo apt install apt-transport-https
sudo apt update
sudo apt install code

# 確認
code --version

【2】オプション

1)ダウングレード(Python 3.7 ⇒ 3.6)する場合

https://qiita.com/kmtk49/items/d9860f29acb97a1ef2e4

を参考にした。

[1] VS code の [Terminal]-[New Terminal] で Terminal を表示する

[2] Terminal の起動が 「X: cmd」(コマンドプロンプト)ではない場合
 (例えば、「X: PowerShell」など)コマンドプロンプトに切り替える
★これをやらなくて、結構、はまった★

[3] 以下のコマンド行う
~~~~
# 環境一覧を表示
conda info -e

# インストール(※)
conda install python=3.6
~~~~
結構時間がかかる、、、※

[4] 動作確認のために、以下のコマンドを行う
~~~~
python -V

Python 3.6.9 :: Anaconda, Inc << Python3.6系になってたらOK
~~~~

※ エラー「Solving environment: failed」がでた場合は、以下の関連記事を参照のこと

https://dk521123.hatenablog.com/entry/2020/06/22/174238

2)仮想環境のデフォルトを設定するには

[1] VS Code を立ち上げる

[2] Conda上に仮想環境を作成する
 + Anacodaを立ち上げて、[Environments] から作成
 + VS Codeなどのコマンドライン上から「conda create -n 環境名 python=バージョン」で作成
 => e.g. : conda create -n  for_py36 python=3.6

[3] 以下のいずれかから設定できる
 + [Ctrl + Shift + P] -[Python: Select Interpreter] を選択
 + VS Code の下の「Python:3.X.X ....」をクリック

参考文献

https://qiita.com/ryt-t5/items/4f15c5b069ad3e6910e8
https://www.atmarkit.co.jp/ait/articles/1805/22/news043.html
https://www.atmarkit.co.jp/ait/articles/1711/24/news034.html

【3】その他

1)コマンドライン引数を設定する

 ネットで調べたのをそのまま行うと、
以下のような表示がでてできなくかなりはまったので、手順をまとめる
~~~~~
Please first open a folder in order to do advanced debug configuration.
~~~~~

手順

[1] 左側の[Explorer (Ctrl+Shift+E)]-[Open Folder]を選択し、任意のパスを設定する
[2] 左側の[Debug (Ctrl+Shift+D)]-[歯車アイコン(Configure or Fix 'lanch.json')]を選択し、「Node.js」を入力
[3] lanch.json を以下のように書き直す
 ⇒ あとは、デバッグ実行すれば、うまく動いた

lanch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "python",
            "request": "launch",
            "name": "Launch Program",
            "program": "${file}",
            "args": [
                "--a1",
                "hello",
                "--a2",
                "world"
            ]
        }
    ]
}

サンプル

import argparse

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("--a1")
    parser.add_argument("--a2")
    args = parser.parse_args()

    print("a1:" + args.a1)
    print("a2:" + args.a2)

if __name__ == '__main__':
    main()

関連記事

Python の環境設定周りのトラブルシューティング
https://dk521123.hatenablog.com/entry/2020/06/22/174238
Visual Studio Code ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2019/10/20/230323
Visual Studio CodePython拡張 ~
https://dk521123.hatenablog.com/entry/2020/10/10/000000
Python統合開発環境IDE
https://dk521123.hatenablog.com/entry/2019/09/09/122954