はじめに
この実験(Lab)では、Python におけるコメントの重要性と実践的な応用について学びます。コメントはコードを理解しやすくするために不可欠であり、保守性や共同作業において極めて重要です。ここでは、一行コメントや複数行コメントなど、さまざまな種類のコメントを探求し、コードの可読性を向上させるためにそれらを効果的に使用する方法を学びます。
この実験(Lab)では、Python におけるコメントの重要性と実践的な応用について学びます。コメントはコードを理解しやすくするために不可欠であり、保守性や共同作業において極めて重要です。ここでは、一行コメントや複数行コメントなど、さまざまな種類のコメントを探求し、コードの可読性を向上させるためにそれらを効果的に使用する方法を学びます。
コメントとは、Python インタープリタには無視されますが、人間が読む際には非常に役立つコード内の注釈です。これらは、コードのロジック、目的、および自明でない詳細を説明するのに役立ちます。コードは機械によって実行されますが、それを読み、保守するのは人間です。クリーンで理解しやすいプログラムを作成するためには、適切なコメントの習慣が不可欠です。
まず、コメントが何もない簡単なスクリプトから始めましょう。WebIDE で、左側のパネルにあるファイルエクスプローラーでファイル purpose.py を見つけて開いてください。
purpose.py ファイルに次のコードを追加します。
x = 10
y = 20
z = x + y
print(z)
Ctrl + S を押してファイルを保存します。
スクリプトを実行するには、WebIDE の上部メニューから Terminal -> New Terminal を選択して統合ターミナルを開きます。ターミナルは画面下部に開き、デフォルトのパスは ~/project です。
ターミナルで次のコマンドを実行して、スクリプトを実行します。
python purpose.py
計算結果の出力が表示されます。
30
このスクリプトは単純ですが、より大きなプログラムでは、x、y、z が何を表しているのかすぐに明確でない場合があります。次のステップでは、このコードをより理解しやすくするためにコメントを追加します。
一行コメントは、短く説明的な注釈に使用されます。Python では、一行コメントはハッシュ記号(#)で始まります。インタープリタは、# の後に続く行のすべてを無視します。これらのコメントは、下のコードを説明するために独立した行に配置することも、ステートメントを説明するために同じ行に配置することもできます。
purpose.py ファイルを修正して、一行コメントを含めてみましょう。エディタで purpose.py を開き、内容を以下のように更新します。
## This script calculates the sum of two numbers
x = 10 ## Assign the integer 10 to variable x
y = 20 ## Assign the integer 20 to variable y
z = x + y ## Calculate the sum of x and y
print(z) ## Print the final result to the console
ファイルを保存(Ctrl + S)し、ターミナルから再度実行します。
python purpose.py
出力は以前と同じになります。
30
ご覧のとおり、コメントはプログラムの動作を変更しませんでした。しかし、コードは格段に読みやすくなりました。最初のコメントはスクリプト全体の目的を説明し、インラインコメントは各行の役割を明確にしています。
複数行にわたる長い説明には、複数行コメントの形式を使用できます。Python には他の言語のような複数行コメント専用の構文はありませんが、この目的のために複数行文字列を使用できます。
複数行文字列は、テキストをトリプルクォート("""..."""(ダブル)または '''...'''(シングル))で囲むことによって作成されます。この複数行文字列が変数に代入されていない場合、Python インタープリタはそれを無視するため、実質的にコメントとして機能します。これは、ブロックコメントや関数ドキュメント(docstring)を作成する際の一般的な慣習です。
WebIDE でファイル multiline.py を見つけて開いてください。次のコードを追加します。
"""
これはトリプルダブルクォートを使用した複数行コメントです。
このスクリプトは、より詳細な説明を提供するために、
複数行にわたるコメントの書き方を示しています。
"""
message = "Hello, Python learners!"
print(message)
ファイルを保存し、ターミナルから実行します。
python multiline.py
以下の出力が表示されます。
Hello, Python learners!
トリプルクォート内のテキストブロックは無視され、print ステートメントのみが実行されました。このテクニックは、ファイルの先頭や複雑な関数の前に詳細な説明を提供する場合に非常に役立ちます。
Python は、宣言コメントとして知られる特別なコメントもサポートしています。これらは、スクリプトの実行方法を設定するために、インタープリタまたはオペレーティングシステムによって処理されます。一般的な例として、シバン(shebang)とエンコーディング宣言の 2 つがあります。
シバン(Shebang) (#!): シバン行はスクリプトの最初の行です。これは、Unix ライクなオペレーティングシステムに対し、ファイルを実行するためにどのインタープリタを使用すべきかを伝えます。Python 3 スクリプトの場合、通常は #!/usr/bin/python3 となります。これにより、スクリプトをスタンドアロンの実行可能ファイルとして実行できるようになります。
エンコーディング宣言: このコメントは、ソースファイルに使用する文字エンコーディングを Python インタープリタに伝えます。コードに非 ASCII 文字が含まれている場合に重要です。UTF-8 の標準的な宣言は ## -*- coding: utf-8 -*- です。これはファイルの 1 行目または 2 行目に配置する必要があります。
両方を使用するスクリプトを作成してみましょう。エディタでファイル declaration.py を開き、次のコードを追加します。
#!/usr/bin/python3
## -*- coding: utf-8 -*-
## This script demonstrates declaration comments and non-ASCII characters.
print("Hello, World!")
print("你好,世界!") ## A greeting in Chinese
ファイルを保存します。このスクリプトを直接実行できるようにする前に、実行可能にする必要があります。ターミナルで chmod コマンドを実行します。
chmod +x declaration.py
これで、python を先に入力することなく、スクリプトを直接実行できます。
./declaration.py
出力では、中国語の文字を含む両方のテキスト行が正しく表示されます。
Hello, World!
你好, 世界!
シバン行によりシステムは Python 3 インタープリタを見つけて使用することができ、エンコーディング宣言により非 ASCII 文字が正しく処理されることが保証されました。
この実験(Lab)では、Python コードにコメントを追加する方法を学びました。短いメモには # を使用した一行コメント、長い説明には """...""" を使用した複数行コメント、そしてスクリプトの実行を設定するためのシバンやエンコーディング宣言のような特別な宣言コメントの使用を練習しました。コードに効果的にコメントを付けることで、コードの可読性、保守性が向上し、他の人(そして将来の自分自身)にとっても理解しやすくなります。