VS CodeでPythonを（ワークスペースを作ろう）

#はじめに
自分は常にpyhonを触っているというわけではありません。VS Codeも、必要に応じて起動する程度です。

で、困るのは、しばらく時間をあけてから、あらためてPython（VS Code）を引っ張りだしたとき、

「あれ？ どこから手をつければいいんだっけ？」

と、立ち往生してしまうことです。
さくさく用事を片付けてしまいたいだけなのに、毎回、これでは困ります。
この記事は、そんなときのためのメモになります。

##環境
- Mac OSX
- VSCode(Visual Studio Code)
- python3



#初期設定
VS codeもpythonもインストール済。各種設定も済んでいるという想定ですが、このあたりについては、以下のサイトを参考にしました。

<dl>
<dt>Python3の導入
<dd>Macにはpython2系がインストールされていますが、python3を使いたい場合は、homebrewを使うのがお手軽です。<br><br>

<a href = "https://qiita.com/7110/items/1aa5968022373e99ae28">MacにPython3をインストールし環境構築【決定版】</a><br><br>

<dt>VS Codeの導入
<dd>VS Codeに導入には、こちらのサイトを参考にしました（Windows10、OSX対応）。<br><br>

<a href="https://atmarkit.itmedia.co.jp/ait/articles/2104/23/news022.html">Visual Studio Codeから「Hello Python」してみよう</a><br><br>


<dt>プラグイン
<dd>拡張機能が豊富なところも、VS Codeの嬉しいところです。<br><br>

<a href="https://yurupro.cloud/767/">【2021年決定版】VSCodeをPython超特化型にする、最高の拡張機能20選まとめ。 </a><br><br>


まあ日本語化はやっておくとして、自分が入れたものは、下の二つです。<br><br>
・indent-rainbow（インデントを視覚的にわかりやすく表示）<br>
・ZenKaku（全角スペースをグレー表示）<br><br>

配色テーマとしては、<br><br>
GitHub Theme<br><br>
を使っています。
</dl>

# さて、何からやるんだっけ……
VS Codeはワークスペースが基本です。
まずは、ワークスペースに指定するための、フォルダを作りましょう。

フォルダはVS Code外で、普通にファインダー（エクスプローラー）から作成します。

ここでは、**firststep**というフォルダを作成しました。

<img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/6cc638f6-3e5a-006c-6200-c509d6ee6ee1.png"/>



# いよいよVS Code
ここで、ようやくVS Codeを起動します。

すでにワークスペースが開いている場合は（半年前につくった何か、とか）、**【ファイル】→【ワークスペースを閉じる】**で、閉じておきます。

そして、新しくワークスペースを作成します。

ワークスペースを作成するには、**【ファイル】→【フォルダをワークスペースに追加】**で、先ほど作成したフォルダを指定します。（フォルダを**ウィンドウにドラック&ドロップ**してもよし）
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/339a3d80-d901-9d8c-56d5-71a211e86f98.png">
すると、下図のような警告がでますが、今の場合、「はい、作成者を信頼します」一択ですよね。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/9e067074-19ad-eb2c-2ac6-c149c6f2593c.png">

さて、どうやらワークスペースはできたようですが、「未設定（ワークスペース）」の「未設定」という表示が、不安を煽ります。
<img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/618a7d44-351c-36a1-7b78-0e51cd7675ec.png">
**【ファイル】→【名前をつけてワークスペースを保存】**で、ワークスペースを保存しておきましょう。
保存ファイル名は、**.code-workspace**は残して、**firststep.code-workspace**としました。
<img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/b07a4e3f-3377-cfe7-bf47-442edc309649.png">
**firststep.code-workspace**というファイルが、自動的に作成されましたね。
中身を見ればとピンとくると思いますが、このワークスペース専用の設定を記述するところですので、必要に応じて使っていきまます。

とりあえずは何もしなくて大丈夫です。
<img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/b76ef6c9-ae1c-eb1c-05b6-f493f3c45c5b.png">

#ワークスペースはできたぞ。さあ、コードを書き始めよう

と、腕をまくったところで、

「あれ？ Pythonって確か、ちょっとしたお作法がなかったっけ？」

そう、Pythonでは、c言語でいうところのヘッダファイルのように、使用する関数名等をあらかじめ定義しておくという仕組みがありません。

自作のメソッドやクラスは、使用する前に記述しなければならないので、肝腎の主処理の記述が下へ下へと、どんどん下がってしまいます。

それを回避するために、「実行ファイルかどうかを確認して、メイン関数に飛ばす」みたいな書き方が定石となっているのでした。

こんなテンプレートを用意しておき、コピペで使うことにしましょう。

```python:テンプレート
def main():
    """
    エントリポイント
    """
    print('Hello Saitama!')
    hoge()


def hoge():
    return True


if __name__ == "__main__":
    main()
```

このテンプレートは本当に最小限なものなので、それっぽいものが欲しいときは、以下のエントリーが参考になります。まあ、ちょこっと試すくらいなら、上記で大丈夫でしょう。

　　[それっぽいPythonコードのテンプレート](https://qiita.com/estaro/items/55ae839d22bee1022150)

それでは、１つ目のファイルの作成です。

**【ファイル】→【新規ファイル】**で新規ファイルを作成します。**言語を選択します。**という表示がでるので、クリック。もちろんPythonを選びます。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/50c57e08-7a80-c47c-3461-1bc71ec98853.png">
ファイルを保存しておきましょう。**【ファイル】→【名前をつけて保存】**で、「firststep」というファイル名にしました。

白紙の画面に、さきほどのソースコードをペタリと貼り付ければ、完成です。

さあ、サクサクとコードを書いて、退勤時間までに帰りましょう！
![1-8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/55303/3c64a46d-3bb3-0e49-7254-ba879e2f1cc6.png)