Python チュートリアル - 関数

  1. Python 関数とは
  2. Python 関数を定義する方法
  3. Python 関数の例
  4. Python で関数を呼び出す
  5. return ステートメント
  6. Python 変数のスコープと寿命
  7. 関数の種類

このセクションでは、以下の内容を学びます

  • 関数とは
  • 関数を作成する方法
  • 関数の種類

Python 関数とは

関数は、特定のタスクを実行するための多数のステートメントを含むプログラムの小さなブロックです。さまざまなタスクを実行する数千行のプログラムがある場合、プログラムを小さなモジュール(ブロック)に分割する必要があります。これにより、可読性が向上し、複雑さが軽減されます。

Python 関数を定義する方法

以下は、関数を定義するための構文です。

def functionName(arguments):
    """This is the definition of this function"""
    statements
    return returnParam
  1. キーワード def は関数を定義するために使用されます。
  2. functionName は関数の名前です。
  3. arguments オプションです。引数は、操作を実行する関数に値を提供します。
  4. コロン()は関数ヘッダーを終了します。
  5. """This is the definition of this function"""docstring であり、関数の動作を説明するオプションです。
  6. 「ステートメント」は関数の本体を指します。
  7. ステートメント return は、オプションで結果を呼び出し元に返します。

Python 関数の例

def language(p):
    """Function to print a message"""
    print("Programming language:", p)

ここでは、呼び出し側から渡される 1つの引数 p を持つ関数 language が定義されています。関数内には、引数 p を含むメッセージを印刷するための docstring と print ステートメントがあります。

Python で関数を呼び出す

関数は、プログラム内のどこからでも呼び出すことができます。関数は、必須パラメーターを使用して名前で呼び出すことができます。

language('Python')
Programming language: Python

return ステートメント

return ステートメントは、関数が呼び出されるコードに制御を戻します。 関数定義の終了を示します。

return の構文は次のとおりです。

return [values_to_be_returned]

関数に return ステートメントがない場合、None オブジェクトが返されます。

return ステートメントの使用例

def square(n):
    return n*n
print("Square of 4=", square(4))
Square of 4=16

このコードでは、関数は print 関数で呼び出され、4 が引数として渡されます。関数の内部には、評価される式 n * n があり、結果は関数が呼び出された場所に返されます(print ステートメント)。

Python 変数のスコープと寿命

変数のスコープは、変数にアクセスできる場所です。関数内で変数が宣言されている場合、その関数の外部からはアクセスできません。このタイプの変数はローカル変数と呼ばれ、宣言されている関数にのみアクセスされます。

変数のライフタイムは、変数がメモリに存在する時間です。関数内で変数が宣言されている場合、コントロールが関数から飛び出すと、変数のメモリが解放されます。

以下の例を参照してください。

def fun():
    a = 12
    print("Value of a inside function:", a)
a = 24
fun()
print("Value of a outside function:", a)
Value of a inside function: 12
Value of a outside function: 24

このコードでは、関数内の変数 a と関数外の変数 a は異なる変数です。

外部から関数内で宣言された変数にアクセスしようとすると、エラーが発生します-「NameError name ‘x’ is not defined」。ただし、関数の外部で宣言された変数にはグローバルスコープがあり、内部からアクセスできます。

関数の種類

Python の関数は、2つのタイプに分類できます。

  1. 「組み込み関数」:定義済みの意味を持ち、特定のタスクを実行します。
  2. 「ユーザー定義関数」:ユーザー定義のタスクを実行するための任意の数のステートメントを含むユーザーによって定義されます。
comments powered by Disqus