VSCodeでPythonをデバッグしたい

# はじめに
最近使用しているVSCodeでPythonの開発環境を構築していきます。
VSCodeでデバッグ、実行ができることまで。
Pythonはインストール済みとします。

# 環境
macOS Sierra 10.12.5
Visual Studio Code version1.18

## extensionのinstall
- `python`

基本的にこれで十分。ちなみに下記機能を揃えている
Linting
Debugging (multi-threaded, remote)
Intellisense
code formatting
refactoring
unit tests
snippets
Data Science (with Jupyter)
PySpark
...and more.

## linterのインストール
事前にインストールしておいても良いが、
VSCodeで.pyファイル開くとlinterがない旨のメッセージ出るので
OK押すとpylintがインストールされるのでそれでOK

## デバッグ
デバッグ（shift + cmd + D）を選択
<img width="562" alt="スクリーンショット 2017-12-02 15.41.08.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/6b422fc5-a23e-ad1e-d4a0-d9107499ffb9.jpeg">

歯車みたいなボタン押す
<img width="448" alt="スクリーンショット 2017-12-02 15.46.25.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/2920422d-d405-e6ef-57ef-0be50634e5da.jpeg">

「Python」の環境を選択する
<img width="756" alt="スクリーンショット 2017-12-02 15.47.48.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/0100164a-9bd1-bb9a-653c-be2f9a56d1fd.jpeg">

launch.jsonファイルが作成され、自動的にvscode上で開かれるので、そのまま変更せずに閉じる
<img width="727" alt="スクリーンショット 2017-12-02 15.48.52.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/4f7071d8-3d21-0bda-6832-1d3684d0dc0c.jpeg">

デバッグしたい.pyファイルをアクティブにした状態でF5でデバッグ可能
<img width="982" alt="スクリーンショット 2017-12-02 15.51.54.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/49ccd14b-e7bd-1121-fc23-dd4df55330dc.jpeg">
デバッグコンソールに出力される
<img width="430" alt="スクリーンショット 2017-12-02 15.52.34.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/804f4f85-cc5c-0122-6e22-9fc26a0d7ac0.jpeg">


## 実行
F1（もしくは cmd+Shift+P）キーを押して Command Palette を開き、「tasks」を入力
出てきた一覧の中から「タスク：タスクの構成」を選択
<img width="667" alt="スクリーンショット 2017-12-02 15.59.03.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/48ec7be8-fdad-9e22-dd34-610683cf9c99.jpeg">

「テンプレートからtasks.jsonを生成」を選択
<img width="699" alt="スクリーンショット 2017-12-02 16.00.11.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/da33749d-0644-fb81-379c-e67b860cd586.jpeg">

更に一覧が出てくるので「Others 任意の外部コマンドを実行する例」を選択
<img width="651" alt="スクリーンショット 2017-12-02 16.01.31.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/555a0c97-6121-e609-ec3b-02f321d6e885.jpeg">

選択すると、tasks.jsonが作成される
<img width="611" alt="スクリーンショット 2017-12-02 16.03.54.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/eebf2b7f-0b52-4d7f-0619-d79df4fe30f2.jpeg">

　
tasks.jsonを下記のように変えて保存

```
{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "python",
            "type": "shell",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "command": "python",
            "args": [
                "${file}"
            ],
            "presentation": {
                "echo": false,
                "reveal": "always",
                "focus": false,
                "panel": "shared"
            },
            "problemMatcher": []
        }
    ]
}
```

［Command］＋［Shift］＋［b］で実行できる
<img width="475" alt="スクリーンショット 2017-12-02 16.04.40.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/211679/1212db82-27ed-3fc0-9002-20c28c6eddfe.jpeg">

# おわりに
ん〜こんなに手軽にデバッグできるのか。
開発準備が整いましたので
色々と作って行こうと思います。（多分）