この記事では、Pythonのコードリントとスタイルガイドの適用方法について詳しく解説します。具体的なコード例とその解説、応用例を含めています。
目次
はじめに
コードリントとスタイルガイドは、コード品質を向上させるための重要な工程です。PythonではPEP 8と呼ばれるスタイルガイドが広く採用されています。今回はこのPEP 8を遵守するためのリントツールとフォーマッターの使い方を紹介します。
PEP 8とは
PEP 8はPython Enhancement Proposalの略で、Pythonのコードを書く際のスタイルガイドです。
主なルール
- インデントはスペース4つ
- 行の最大長は79文字
- 関数名や変数名は小文字のスネークケース
コードリントツール「flake8」
flake8はPythonのコードリントツールの一つで、PEP 8をはじめとする多くのスタイルガイドに対応しています。
インストール方法
# pipを使ってflake8をインストール
pip install flake8
基本的な使い方
# コードリントを実行
flake8 your_file.py
コマンドラインオプション
# 特定のエラーを無視する
flake8 --ignore=E302 your_file.py
コードフォーマッター「black」
blackはPythonのコードフォーマッターで、コードをPEP 8に準拠した形に自動で整形してくれます。
インストール方法
# pipを使ってblackをインストール
pip install black
基本的な使い方
# コードを自動整形
black your_file.py
応用例
VSCodeでの自動整形設定
VSCodeを使用している場合、保存時に自動でflake8とblackを実行する設定が可能です。
{
"python.linting.flake8Enabled": true,
"editor.formatOnSave": true,
"python.formatting.provider": "black"
}
pre-commitでの自動リント
pre-commitを使って、コミット前に自動でflake8とblackを実行する設定も有用です。
# .pre-commit-config.yaml
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.4.0
hooks:
- id: flake8
- repo: https://github.com/psf/black
rev: 20.8b1
hooks:
- id: black
まとめ
Pythonでのコーディングにおいて、コードリントとスタイルガイドは品質を保つ上で非常に重要です。flake8とblackをうまく活用して、より高品質なコードを書きましょう。
コメント