はじめに
この実験(Lab)では、Python で関数を定義し、使用する方法を学びます。関数はコードを整理し、再利用性を高めるために不可欠です。まず、関数の概念を理解し、Python の組み込み関数を探求し、パラメータを使用してそれらを呼び出し、その出力を観察する方法を学習します。
組み込み関数の探求に続き、独自のシンプルな関数を定義する方法を学びます。最後に、これらのユーザー定義関数を呼び出して、それらが含むコードブロックを実行する練習を行い、Python における関数作成と使用の理解を深めます。
組み込み関数の理解と使用
このステップでは、関数の概念を探求し、Python の組み込み関数を使用する方法を学びます。関数とは、特定の操作を実行する再利用可能なコードブロックのことです。Python には、print()、len()、sum()など、すぐに使用できる多くの組み込み関数が用意されています。
これらの関数のいくつかがどのように機能するかを見るために、Python スクリプトを記述することから始めましょう。
まず、左側の WebIDE ファイルエクスプローラーでbuiltin_functions.pyファイルを見つけてください。このファイルは、~/projectディレクトリにあらかじめ作成されています。ファイルをダブルクリックしてエディタで開きます。
次に、builtin_functions.pyファイルに次の Python コードを追加します。このコードは、いくつかの組み込み関数を呼び出す方法を示しています。
## print() 関数を使用して出力を表示する
print("Hello, Python Functions!")
## len() 関数を使用して文字列の長さを取得する
message = "Hello World"
print(len(message))
## sum() 関数を使用してリスト内の数値を合計する
numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
print(total)
コードを記述した後、Ctrl+Sを押してファイルを保存します。
スクリプトを実行するには、WebIDE で統合ターミナルを開きます(まだ開いていない場合は、上部メニューからTerminal > New Terminalを選択します)。次に、次のコマンドを実行します。
python ~/project/builtin_functions.py
ターミナルに、各print()呼び出しからの出力が表示されます。
Hello, Python Functions!
11
15
この出力は、組み込み関数の呼び出し結果を示しています。print()はテキストを表示し、len()は文字列内の文字数を返し、sum()はリスト内の項目の合計を計算します。
パラメータと戻り値を持つ関数の使用
関数は、処理するために入力データが必要になることがよくあります。このデータはパラメータ(引数とも呼ばれます)として関数に渡されます。処理後、関数は結果を返すことができ、これは戻り値として知られています。
パラメータを受け取る関数を探求し、その戻り値をどのように使用できるかを確認するために、builtin_functions.pyスクリプトを拡張しましょう。
WebIDE エディタでbuiltin_functions.pyファイルを再度開きます。ファイル末尾に次のコードを追加します。
## 複数の数値パラメータを使用して max() 関数を使用する
largest_number = max(10, 25, 15)
print(largest_number)
## 2 つのパラメータを使用して round() 関数を使用する
pi_approx = 3.14159
rounded_pi = round(pi_approx, 2) ## 小数点以下 2 桁に丸める
print(rounded_pi)
## リストパラメータを使用して sorted() 関数を使用する
unsorted_list = ['cherry', 'apple', 'banana']
sorted_list = sorted(unsorted_list)
print(sorted_list)
変更をファイルに保存します(Ctrl+S)。
次に、ターミナルから更新されたスクリプトを実行します。
python ~/project/builtin_functions.py
ターミナルには、元のコードと新しいコードの両方からの出力が表示されます。
Hello, Python Functions!
11
15
25
3.14
['apple', 'banana', 'cherry']
新しい出力を確認しましょう。
max(10, 25, 15)は 3 つの数値をパラメータとして受け取り、最大値である25を返します。round(pi_approx, 2)は数値と小数点以下の桁数をパラメータとして受け取ります。丸められた値である3.14を返します。sorted(unsorted_list)はリストをパラメータとして受け取り、要素が昇順にソートされた新しいリストを返します。
それぞれの場合において、私たちは関数の戻り値を(largest_number、rounded_pi、sorted_listという)変数に格納してから出力しました。これは一般的で有用な慣行です。
簡単な関数の定義
組み込み関数は強力ですが、カスタムタスクを実行するためには、独自の関数を作成する必要がよくあります。これは関数の定義と呼ばれます。
Python では、defキーワードを使用して関数を定義します。基本的な構文は次のとおりです。
def function_name(parameters):
"""Docstring: 関数のオプションの説明。"""
## 実行されるコード(関数本体)
## ...
return value ## オプションの return 文
def: 関数定義を開始するキーワード。function_name: 関数のための説明的な名前。(parameters): 関数の入力変数。関数はゼロ個以上のパラメータを持つことができます。:: コロンは関数ヘッダーの終わりを示します。- インデント: 関数内のコード行はインデントされている必要があります(通常は 4 スペース)。これが Python がステートメントをグループ化する方法です。
最初の関数を作成してみましょう。WebIDE ファイルエクスプローラーでmy_functions.pyファイルを見つけて開きます。
挨拶を出力する関数を定義するために、my_functions.pyに次のコードを追加します。
## 'greet'という名前のシンプルな関数を定義する
def greet():
"""この関数はシンプルな挨拶メッセージを出力します。"""
print("Hello from a user-defined function!")
ファイルを保存します。
この時点で、greetという名前の関数を正常に定義しました。しかし、このスクリプトを実行しても何も起こりません。関数を定義することは、Python に関数が何をするかを伝えるだけであり、その中のコードを実際に実行するわけではありません。関数のコードを実行するには、それを呼び出す必要があります。これは次のステップで説明します。
ユーザー定義関数の呼び出し
関数を定義した後、そのコードを実行するために呼び出す必要があります。関数を呼び出すのは簡単です。関数の名前の後に括弧 () を付けるだけです。
前のステップで定義したgreet関数を呼び出してみましょう。
WebIDE エディタでmy_functions.pyファイルを開きます。関数定義の後に、関数を呼び出すコード行を追加します。
## 'greet'という名前のシンプルな関数を定義する
def greet():
"""この関数はシンプルな挨拶メッセージを出力します。"""
print("Hello from a user-defined function!")
## greet 関数を呼び出してそのコードを実行する
print("Calling the function now...")
greet()
ファイルを保存します。関数呼び出し greet() が def greet(): ブロックの後に来るようにすることが重要です。Python はファイルを上から下に読み込むため、関数を呼び出す前に定義する必要があります。
次に、ターミナルからスクリプトを実行します。
python ~/project/my_functions.py
コンソールに出力が表示されます。
Calling the function now...
Hello from a user-defined function!
関数の大きな利点は再利用性です。コードを書き直すことなく、同じ関数を複数回呼び出すことができます。greet()をもう一度呼び出してみましょう。my_functions.pyを次のように変更します。
## 'greet'という名前のシンプルな関数を定義する
def greet():
"""この関数はシンプルな挨拶メッセージを出力します。"""
print("Hello from a user-defined function!")
## greet 関数を複数回呼び出す
print("Calling the function...")
greet()
print("Calling it again...")
greet()
ファイルを保存し、もう一度実行します。
python ~/project/my_functions.py
出力には、関数が 2 回実行されたことが示されます。
Calling the function...
Hello from a user-defined function!
Calling it again...
Hello from a user-defined function!
これにより、関数がいかにしてよりクリーンで、整理され、再利用可能なコードの記述に役立つかが示されます。
まとめ
この実験(Lab)では、Python における関数の基礎を学びました。まず、print()、len()、sum()などの Python の組み込み関数を探求し、スクリプト内でそれらを呼び出す練習をしました。次に、max()、round()、sorted()などの例を用いて、パラメータを渡し、戻り値を使用することで、関数がどのように機能するかを深く掘り下げました。
最後に、defキーワードを使用して独自のカスタム関数を定義する構文を学び、ユーザー定義関数を呼び出してそのコードを実行する練習をしました。この実験(Lab)は、あらゆる Python プログラマーにとって重要なスキルである、モジュール化され再利用可能なコードを作成するための強固な基盤を提供しました。



