【Python】コメント・コメントアウトの方法

Python

この記事では、Pythonのコメントアウトについて解説します。

コメントとは、実行時に無視される文字列をソースコード内に記述するための機能です。直感的にわかりにくい箇所に、コメントを添えておくことで、のちに読み返したときや自分以外の人が読むときの理解の助けとなります。

この記事で学べること
  • 行コメントアウト
  • 複数行コメントアウト
  • コメントアウトのショートカット
  • 特殊なコメント

行コメントアウト

行コメントアウトとは、行単位でコメントする方法です。#を記述した箇所から行末までがコメントとして認識されます。
※ 「#」は「shiftキー」+「3キー」

コメントの書き方

#の後にスペースを1つ空けてコメントを記述します。

# コメント

行コメントアウトには「ブロックコメント」と「インラインコメント」があります。

ブロックコメント

ブロックコメントは、説明したい箇所の上にインデントを合わせて記述します。

# 1を出力
print(1)


# 2を出力する関数
def func():
    # 2を出力
    print(2)


# func関数の呼び出し
func()

実行結果

1
2

インラインコメント

インラインコメントは、説明したい箇所の後に続けて記述します。その際は、スペースを2つ空けてからコメントを書き始めます。

print(1)  # 1を出力

def func():
    print(2)  # 2を出力

func()  # func関数の呼び出し

実行結果

1
2

ただし、インラインコメントはバックスラッシュを使って明示的に行継続をしている箇所には記述出来ないので気をつけましょう!

s = 'a' \  # エラー
'b' \  # エラー
'c'  # コメント可能

print(s)

複数行コメントアウト

複数行コメントアウトとは、複数行に渡ってコメントを記述する方法です。記述するには、複数行文字列を使います。

書式

“(ダブルクォーテーション)または‘(シングルクォーテーション)3つで囲んで記述します。

"""
複数行
コメント
"""

'''
複数行
コメント
'''

サンプル

複数行コメントを使って、モジュールの先頭に用途や使い方、定義されているクラスなどを記述したりします。

"""何をするためのモジュールなのかを簡潔に説明する。

補足

Classes:

    定義されているクラス名

Functions:

    定義されている関数名

Misc variables:

    その他の変数名

"""
.
.
.

上記のサンプルは、pickleモジュールの書き方を参考にしました。

注意:インデントが異なるとエラーが発生する

複数行コメントは、あくまで文字列なので、行コメントと違って実行時に無視される訳ではありません。なので、インデントを合わせないとエラーになってしまいます。

print(1)
    """
    エラー
    です
    """

以下のように、正しいインデントで記述しましょう!

print(1)
"""
コメント
です
"""

# 関数内に記述する場合は関数のインデントのルールに従います
def func(): 
    """
    複数行
    コメント
    """ 
    pass

複数行コメントアウトと似たような感じで、ドキュメンテーション文字列を定義することができます。詳しくは以下の記事を参考にしてください↓
【Python】関数やクラスに説明文を書こう【docstring ドキュメンテーション文字列】【Python】関数やクラスに説明文を書こう【docstring ドキュメンテーション文字列】

コメントアウトのショートカット

統合開発環境やエディタといったツールでは、コメントアウトを簡単に記述するためのショートカットが用意されています。

大体のツールでは、以下のコマンドで選択している行をコメントにすることができます。

Mac: command + /

Windows: ctrl + /

また、複数行を選択した状態でショートカットを押すことで、選択していた行をまとめてコメントアウトすることができます。

できない場合

使用しているツールのキーマップおよび、登録されているショートカットを確認してみましょう!

Pythonコーティング規約[PEP8]

PEPとは「Python Enhancement Proposal」の略で、PEP8ではコーディング規約について書かれています。そこには、コメントについてのルールも記載されています。

【外部サイト】PEP 8 — Style Guide for Python Code | Python.org

PEP8は「こう書いたら見やすい」という指標でしかありません。守らなくてもエラーになる訳ではありませんが、特にほかの規約が無い場合は、PEP8に従ってコードを書きましょう!

特殊なコメント[# noqa]

# noqaを記述した行は、リンターにチェックさせないようにできます。

リンターとは?

PEP8に則ってコードが書かれているかチェックするプログラム

以下のコードを見てください。

このコードでは、osモジュールをファイルの先頭でインポートしていないので、PEP8警告が出てしまっています。

しかし、# noqaを記述することでPEP8警告を発生させなくすることができます。

まとめ

この記事では、Pythonのコメントアウトについて解説しました。

今回のおさらい

簡単に今回の内容をおさらいしておきます。

# ---行コメント---

# ブロックコメント
val = 1

val = 2  # インラインコメント


# ---複数行コメント---

'''
コメント
です
'''

コメントが書かれているソースコードに手を加える場合は、必ずコメントも書き直すように癖を付けておきましょう!コードの内容とコメントがバラバラになってしまうと、コメントによって間違った使い方を教えられるというタチの悪いソースコードとなってしまいます。

適切なコメントを書いて、みんなに(自分にも)優しいソースコードを作成しましょう!

それでは今回の内容はここまでです!ではまたどこかで〜( ・∀・)ノ

タイトルとURLをコピーしました