Cover Image for VSCodeにPython開発環境を作る方法
VSCodeにPython開発環境を作る方法

概要

今回の記事では、VS CodeでPython開発環境(Windows)を構築する方法を丁寧に解説します。

  • Windows上でPython開発環境を構築
  • autopep8による自動フォーマット(コード整形)
  • flake8による静的解析(コードチェック)
  • プログラム実行
  • 簡単なデバック方法

この開発環境でPython開発できるかな?

くるみ
k69

この開発環境でPythonで基本的な開発はできるようになります

前提条件

  • Windows環境

目的

今回の記事では、Pythonで基本的な開発できる環境を構築すること目的としています。

目次

内容

さっそく具体的な手順を解説します。

Windows上でPython開発環境を構築

まずはWindows上のVS CodeでPython開発環境を構築します。
インストールにはwingetを使用しています。
※ wingetについてはこちらも参考

https://k69blog.com/posts/winget/

Python 3.11 (LTS) をインストール

winget install Python.Python.3.11 

2022/11/27 時点でのLTSを使用しています。

任意のディレクトリに仮想環境(venv)を作成

仮想環境(venv) を作成すると、Pythonのバージョンやライブラリ(pip install xxx)を仮想環境ごとにセットアップできます。

仮想環境を分けるイメージ

  • 仮想環境1:バックエンド用
    • requests
    • mysqlclient など
  • 仮想環境2:AI用
    • Pandas
    • Numpy など

仮想環境を作成

python -m venv env
k69

env は仮想環境名なのでご自由にどうぞ。

仮想環境(venv)は現在のPythonバージョンで作成されます。
※ バージョンはpython --versionで確認できます。

VS CodeのPython拡張機能をインストール

code --install-extension ms-python.python

VS Code は別途インストール願います

k69

参考までにVS Codeは

winget install Microsoft.VisualStudioCode 

でインストールできます。

拡張機能インストール時に指定する機能名について

拡張機能は VS Code マーケットプレイス内に記載されているUnique Identifierで確認できます。
cmd

autopep8による自動フォーマット(コード整形)

作成した仮想環境(env)を使用(アクティブ)し、autopep8 をインストールします。

  1. 作成した仮想環境(env)を使用(アクティブ)
.\env\Scripts\activate.bat

(env) C:\work>のように(env)が表示されればOK

  1. autopep8 をインストール
pip install autopep8

ファイルを保存したときに自動フォーマットするための設定
設定(歯車マーク)でeditor.formatOnSaveで検索し、チェックを入れる。
cmd

  1. 設定
    設定(歯車マーク)でpython.formatting.autopep8Argsで検索し、パラメタを設定することで1行の文字数の設定除外ルールの設定などができます。

cmd

  • 例)1行の文字数を160文字に設定する場合
    --max-line-length
    160
    
  • 例)1行の文字数チェック(E501)を除外する場合
    --ignore
    E501
    

設定できる内容はこちらを参照。

https://pypi.org/project/autopep8/

flake8による静的解析(コードチェック)

作成した仮想環境(env)を使用(アクティブ)し、flake8 をインストールします。

  1. 作成した仮想環境(env)を使用(アクティブ)
.\env\Scripts\activate.bat

(env) C:\work>のように(env)が表示されればOKです。

VS Code の右下にも仮想環境の状態が表示されます。

cmd

  1. flake8 をインストール
pip install flake8

設定(歯車マーク)でpython.linting.flake8Enabledで検索し、チェックを入れる。
cmd

  1. flake8 の設定
    設定(歯車マーク)でpython.linting.flake8Argsで検索し、パラメタを設定することで1行の文字数の設定除外ルールの設定などができます。

cmd

  • 例)1行の文字数を160文字に設定する場合
    --max-line-length=160
    
  • 例)1行の文字数チェック(E501)を除外する場合
    --ignore=E501
    

設定できる内容はこちらを参照。

https://flake8.pycqa.org/en/2.5.5/config.html#user-global

プログラム実行

サンプルプログラムを動かしてみます。

サンプルプログラム作成

srcディレクトリを作成し、配下にサンプルプログラム(main.py)を作成します。
このサンプルプログラム(main.py)はこちらを参考に作成しました。

https://python.atelierkobato.com/janken/

サンプルプログラム
import random


# じゃんけん判定関数
def judge(x, y):
    score = (x - y + 3) % 3
    if score == 0:
        j = "引き分けです"
    elif score == 1:
        j = "コンピュータ2の勝ちです"
    else:
        j = "コンピュータ1の勝ちです"
    print(j)


# じゃんけんの手のリスト
hand = ["グー", "チョキ", "パー"]

# コンピュータ1の手をランダムに決定
x = random.randint(0, 2)

x = int(x)

# コンピュータ2の手をランダムに決定
y = random.randint(0, 2)

# 双方の出した手を表示
print("\nコンピュータ1の手:{}".format(hand[x]))
print("コンピュータ2の手:{}\n".format(hand[y]))

# 勝敗を表示
judge(x, y)

サンプルプログラム実行方法

3つの実行方法を説明します。

  1. 右上の▷ボタンを押す。
    cmd

  2. 右クリックから「ターミナルで Python ファイルを実行する」を押す。
    cmd

  3. ショートカット(Ctrl + Shift + Enter など)を設定し、実行する。
    3-1. 設定(歯車マーク)から「キーボードショートカット」を選択
    3-2. pythonExecinTerminalで絞り込み
    3-3. ショートカット(Ctrl + Shift + Enter)を設定
    cmd

k69

オススメはこれ(ショートカット設定)です
マウスでカーソル移動しなくても実行できるので便利!

簡単なデバック方法

  1. ブレークポイント を設定します。(赤丸部分をクリックする)
    cmd
  2. 右上の▷ボタンから「Pythonファイルのデバッグ」を押す。
    cmd
  3. デバッグが開始され、ブレークポイントでプログラムが停止する。
    cmd
  4. ステップオーバなどのデバッグ操作をして、変数に格納された値などを確認する。
    cmd
    cmd

まとめ

記事はいかがでしたか?
今回の記事内容でPythonの基本的な開発できると思いますので、これからPython開発を行う方に参考にしていただければと思います。

k69

今回の記事内容以外にも必要に応じて追記します

わからないところなどがあれば、マシュマロを投げていただきたいです。
(できるだけ回答します)

https://marshmallow-qa.com/k69blog_com?utm_medium=url_text&utm_source=promotion

本記事を読んでいただきありがとうございまいた。
少しでもみなさまのお役に立てばうれしいです。

© 2022 k69

本サイトを通じて、たくさんの人がプログラミングに興味を持ち、 これがキッカケでモノづくりの楽しさに触れることができれば幸せです!