ホームページ > バックエンド開発 > Python チュートリアル > Python で自動フォーマットとリンティング用に VSCode を構成する方法

Python で自動フォーマットとリンティング用に VSCode を構成する方法

Barbara Streisand
リリース: 2025-01-08 18:14:42
オリジナル
294 人が閲覧しました

How to Configure VSCode for Auto Formatting and Linting in Python

VSCode Python コードの自動フォーマットとコード インスペクションの構成ガイド

VSCode は、その柔軟性と強力な機能により、多くの Python 開発者に選ばれるコード エディターとなっていますが、それは数多くあるコード編集および自動化ツールの 1 つにすぎません。ワークフローによっては、開発者は PyCharm、Sublime Text、さらには Vim などの他の IDE やエディターを好む場合があります。このガイドでは VSCode に焦点を当て、自動フォーマットとコード インスペクションを設定する方法を示しますが、同様の原則が他のツールにも当てはまります。

Python 開発者は簡潔で読みやすいコードを追求しており、VSCode のようなツールは自動フォーマットとコード検査を通じてこのプロセスを簡素化します。このガイドでは、構成ファイルと CLI コマンドを使用して Python のフォーマットとコード インスペクション用に VSCode を構成し、自動化を確実にし、手動介入を回避する方法を説明します。

自動フォーマットとコードチェックが必要なのはなぜですか?

  • 自動フォーマット 一貫したコード スタイル、PEP 8 への準拠を確保し、手動調整の時間を節約します。
  • コード インスペクション は、構文エラー、未使用のインポート、その他の潜在的な問題を早期に特定します。

この 2 つを組み合わせることで、高品質のコードを維持し、エラーを減らすことができます。

フォーマットとコード検査に必要なツール

Python コードを効果的にフォーマットして検査するには、次のツールが必要です:

黒 (書式設定ツール)

  • 目的: Black は、一貫したコード スタイルと PEP 8 仕様への準拠を自動的に保証する強力なコード フォーマット ツールです。
  • 主な機能: 手動調整を行わずにコードのフォーマットを簡素化します。
  • インストール: 実行 pip install black

pylint (コードチェックツール)

  • 目的: pylint は Python コードを分析してエラーを特定し、コーディング標準を適用し、未使用のインポートや未定義の変数などの潜在的な問題を強調表示します。
  • 主な機能: エラーを検出し、ベスト プラクティスを適用します。
  • インストール: 実行 pip install pylint

Black と pylint を使用した自動構成

ワークフローをさらに合理化するには、保存時にコードを自動的にフォーマットしてチェックするように VSCode を構成できます。これにより、手動チェックの必要性がなくなり、余分な労力をかけずにコードの一貫性が保たれます。

保存時の自動フォーマットとコード検査を有効にする

次のオプションを settings.json ファイルに追加します:

{
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.fixAll": true
  }
}
ログイン後にコピー
  • "editor.formatOnSave": ファイルを保存するときにコードを自動的にフォーマットします。
  • "editor.codeActionsOnSave": 保存時に利用可能なコード インスペクション修正をすべて実行し、特定された問題が自動的に解決されるようにします。

settings.json 構成ファイルを使用すると、VSCode 設定を手動で調整することなく、書式設定とコード インスペクションの設定を定義できます。

VSCode 設定をプログラムで更新する

.vscode ディレクトリ内の settings.json ファイルを作成または更新します:

{
  "python.formatting.provider": "black",
  "editor.formatOnSave": true,
  "python.linting.enabled": true,
  "python.linting.pylintEnabled": true,
  "python.formatting.blackArgs": ["--line-length=79"],
  "python.linting.pylintArgs": ["--disable=C0114,C0115,C0116"]
}
ログイン後にコピー
ログイン後にコピー

これにより、Black がフォーマッタとして有効になり、行の長さが 79 文字に設定され、pylint コード検査が有効になり、特定の docstring 警告が無効になります。

推奨拡張機能を追加

チーム全体のコードの一貫性を高め、すべてのメンバーが必要なツールを確実に使用できるようにするには、extensions.json ファイルをプロジェクトに直接追加します。

{
  "recommendations": [
    "ms-python.python",
    "ms-python.black-formatter",
    "ms-python.pylint"
  ]
}
ログイン後にコピー

このファイルを .vscode ディレクトリに保存し、extensions.json という名前を付けます。

設定ファイルの視覚的表現

ファイルとその用途の内訳は次のとおりです:

文件 用途
.vscode/settings.json 定义项目特定的格式化和代码检查行为设置。
.vscode/extensions.json 推荐团队范围内的开发 IDE 扩展。

ディレクトリ構造の例

<code>.vscode/
├── settings.json   # 配置格式化和代码检查行为
├── extensions.json # 推荐 VSCode 扩展</code>
ログイン後にコピー

構成をテストします

フォーマットとコード検査の例

  1. コーディングの問題:
   import os

   def example_function():
           print ( "Hello World" )
   print(undefined_variable)
ログイン後にコピー
  1. Black の実行後:
   import os

   def example_function():
       print("Hello World")

   print(undefined_variable)
ログイン後にコピー
  1. pylint を実行すると、次の警告がマークされます:
    • 未使用のインポート: os
    • 未定義の変数: unknown_variable

黒とパイリントを一緒に使用する

なぜ Black と pylint を一緒に使用するのですか?

  • ブラックは、一貫したフォーマットと PEP 8 への準拠を自動的に保証します。
  • pylint はコードの問題 (未使用のインポート、未定義の変数など) を特定し、コーディング標準を強制します。

これら 2 つのツールを使用したワークフロー

settings.jsonを更新:

{
  "python.formatting.provider": "black",
  "editor.formatOnSave": true,
  "python.linting.enabled": true,
  "python.linting.pylintEnabled": true,
  "python.formatting.blackArgs": ["--line-length=79"],
  "python.linting.pylintArgs": ["--disable=C0114,C0115,C0116"]
}
ログイン後にコピー
ログイン後にコピー

結論

settings.json と CLI コマンドを使用して自動フォーマットとコード チェックを行うように VSCode を構成し、シームレスで一貫した開発ワークフローを確保します。手動手順を回避し、自動化を活用することで、書式設定やコード インスペクションの問題を心配することなく、高品質の Python コードの作成に集中できます。

プログラミングを楽しんでください!

以上がPython で自動フォーマットとリンティング用に VSCode を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート