レッスン22関数とメソッドの特徴と違いを学びましょう
22読んだんですけど難しいですね

関数とメソッドの違いは、その定義や使用の文脈によるものです。以下にその主な違いを箇条書きで説明します:

  1. 定義の違い

    • 関数: グローバルなスコープまたはローカルなスコープで定義される独立したコードのブロックです。例えば、Pythonのprint()len()は関数です。
    • メソッド: クラスの中で定義され、そのクラスのオブジェクト(またはインスタンス)に関連づけられた関数です。メソッドは、オブジェクトの属性や他のメソッドにアクセスできます。
  2. 呼び出し方の違い

    • 関数: 直接その名前で呼び出すことができます。例:len(my_list)
    • メソッド: オブジェクトを通して呼び出されます。例:my_list.append(item)
  3. アクセスの違い

    • 関数: 通常、グローバルな変数や引数として渡された変数にしかアクセスできません。
    • メソッド: クラスの属性や他のメソッドにアクセスするためのselfキーワードを通して、そのオブジェクトのデータにアクセスできます。
  4. 使用例

    • 関数: max(1, 2, 3) - 与えられた引数の中で最大の値を返す。
    • メソッド: list.append(4) - 与えられた値をリストの末尾に追加する。

このように、関数とメソッドの主な違いは、その定義や使用の文脈にあります。しかし、どちらも特定のタスクを実行するためのコードのブロックとして機能します。


  1. 関数 (Function):

    • 特定の処理を実行するためのコードブロック。一度定義すると、何度でも呼び出して利用することができる。
  2. 引数 (Argument):

    • 関数が受け取る値。関数はこれを利用して特定の処理を行う。
  3. 戻り値 / 返り値 (Return Value):

    • 関数が計算や処理を終えた後に返す値。return ステートメントで指定される。
  4. メソッド (Method):

    • 特定のオブジェクトやデータ型に属している関数。例えば、リストオブジェクトの append() はメソッドである。
  5. データ型 (Data Type):

    • 値の種類やカテゴリを示す。例: 整数(int)、浮動小数点数(float)、文字列(str)など。
  6. リスト型 (List Type):

    • 複数のアイテムを順序付けして保存するためのデータ型。Pythonでは [1, 2, 3] のように表される。
  7. 可変長引数 (Variable-length Argument):

    • 関数が任意の数の引数を受け取れるようにするための機能。Pythonでは *args という形で表されることが多い。
  8. キーワード引数 (Keyword Argument):

    • 関数呼び出し時に、引数の名前を指定して値を渡す方法。また、関数定義時に **kwargs を使って任意の数のキーワード引数を受け取ることができる。

これができた単語なんですけど今のところ、だから何だっけ?という感じです