コメント

概要

コメントアウトをすることでプログラムの中に書いたメッセージをPythonに処理させないことができます。 これを使うことで「プログラムが何をやっているかの説明」や「一時的にプログラムの一部を実行させない」ことができます。

Pythonでは一行のコメントアウトには「#」記号を使い、複数行のコメントには「トリプルクオテーション」を使います。 他のプログラミングでよく利用される「//」及び「/* */」は使えません。

コメントでプログラムを読みやすくする

Pythonのプログラムファイルに書かれている内容は、基本的には全てプログラムとして解釈されます。 Pythonの文法として間違ったものを書くと、エラーで動かなくなります。

ただ、プログラムの中にも「Pythonに実行してほしくないメッセージ」を書きたいことがあります。 例えば、複雑なプログラムを書いた際に「この処理はこれこれをしています」といったことを書いておけば、 そのプログラムを読んだ人は何をやっているか理解しやすいです。

Pythonに限らず、多くのプログラミング言語はこのような「プログラムとして解釈されないメッセージ」を書くことができます。 その解釈されないメッセージを「 コメント 」と呼んでおり、解釈させなくすることを「 コメントアウト 」と呼びます。

コメントでプログラムを一時的に無視させる

コメントは実際のプログラムを無視させる目的でも使われます。

プログラムを書いている最中は「今はこの箇所は使わないが、後でまた使う」といったような状況が発生します。 そういった状況でプログラムを消してしまうと後で戻すのが面倒ですが、コメントアウトしておけばコメントの記号を消すだけで元に戻せます。

1行のコメント

Pythonでコメントを書くには「 # 」記号を使います。 この記号は「シャープ」または「ハッシュ」と呼ばれており、その行のこれより後はPythonから無視されます。

プログラム: 「#」を使った1行のコメント

# 5 + 5 の結果を表示する
print(5 + 5)

# 次の1行は無視される
# print('Hello Python')

実行結果: コメント箇所は無視される

10

コメントには1行を割り当てる 」ことが一般的です。 ただ、短いコメントであれば以下のようにPythonの式のあとにコメントを書くこともできます。 その際は#以降のみがコメントとして扱われるので、「 #より前はPythonに解釈されて実行 」されます。

プログラム: #の後ろのみが無視される

print(5 - 3) # 5 - 3 の結果を表示する

実行結果: #の前は実行される

2

このような「Pythonのプログラムの後に続けて書かれるコメント」は、「 インラインコメント 」と呼ばれています。

複数行のコメント

先ほど使った#で、複数行をコメントアウトすることもできます。

プログラム: #を使った複数行のコメントアウト

#print(5 + 5)
#
#print(5 - 3)

print('Hello Python')

実行結果: 複数行が無視されている

Hello Python

プログラムの説明を2,3行書く程度であれば、#記号でコメントしてしまうことが多いです。 ただ、上記の例のように複数行のプログラムをコメントアウトする場合は#ではなく、 「 トリプルクオテーション 」を使ってコメントアウトすることが一般的です。

プログラム: トリプルクオテーションを使った複数行のコメントアウト

'''
print(5 + 5)

print(5 - 3)
'''

print('Hello Python')

実行結果: 複数行が無視されている

Hello Python

トリプルクオテーションはシングルクオテーションを3つ続けるか、ダブルクオテーションを3つ続けます。 コメントアウトする前後にあるトリプルクオテーションに使う記号は統一する必要があります。

なお、トリプルクオテーションは厳密にはコメントではなく、「複数行の文字列」を作っているだけです。 ただ、Pythonではこれを複数行コメントとして使うことが一般的なので、 複数行のコードをコメントアウトしたい場合はトリプルクオテーションを使って下さい。

トリプルクオテーションを文字列として使う方法は文字列型の解説ページで扱います。

使えないコメント記法

Python以外のプログラミング言語では以下のようなコメント方法があります。

  • 「//」 : 1行コメント
  • 「/* */」 : 複数行コメント

これらはPythonでは使えません。