レッスン3 / 6問目

『メソッドと組み込み関数』

リストのメソッドを使った問題にチャレンジしましょう。

Lesson1

fruits リストの2番目(grapeの後ろ)に "apple" を追加してください

Lesson2

fruits リストの末尾に "banana" と "orange" を追加してください。

Last updated:2020/2/3

['grape', 'apple', 'peach', 'banana', 'orange']
以下の関数を使用します。

append()
リスト.append(末尾に追加する要素)

insert()
リスト.insert(インデックス, 追加する要素)

extend()
リスト.extend(末尾に追加するリスト)
  1. fruits = ["grape", "peach", ]

  2. # fruits リストの2番目に "apple" を追加してください

  3. fruits.insert(1, "apple")

  4. # fruits リストの末尾に "banana" と "orange" を追加してください

  5. fruits.extend(["banana", "orange"])


  6. print(fruits)
main.py
設定
g
n
i
d
a
o
L

                 
        

    
            

Leagence Programming

メソッドとは

前回のレッスンではappendやinsertを学習しましたが、これらの関数は「fruits.append()」のようにリスト名に続けて関数名を記述していました。この関数の記述方法について疑問を持った方もいると思います。

実はこれはメソッドと呼ばれ、リストに対してのみ呼び出し可能な関数であり、そのため、リスト名に続けて関数名を記述する形となっています。

またこれまで見てきた文字列や数値と同様に、リストにはリスト型という型があります。
つまり、appendやinsertは「リスト型に対して呼び出すことができる関数」といえます。

組み込み関数

メソッドと関数の違いを理解するために組み込み関数という概念について見ていきます。これまでのレッスンで登場した代表的な関数ではprint関数やstr関数などがありました。実はこれらの関数は厳密には組み込み関数と呼ばれます。

なぜ組み込み関数と呼ぶかというとpythonに元から組み込まれている関数だからです。(これまでのレッスンでは組み込み関数しか登場していないため「元から組み込まれていない関数」がどのようなものかわからないと思いますが、これは以降のレッスンで登場します。)

そしてこの組み込み関数は単体で記述していました。

  1. print("Hello World")  # 単体で呼び出されている。

組み込み関数とメソッドの違い

ではこの組み込み関数とメソッドの違いはどこにあるのでしょうか。違いは単体で呼び出せるかどうかの違いです。
組み込み関数は単体で呼び出すことができますが、メソッドはその型に対して呼び出します。例えばfruitsというリストに対してappendを使用する場合は以下のようにリスト名に続けてメソッド名を記述しています。

  1. fruits.append()

厳密にはメソッドとは「クラス内で定義された関数」を指しますが、この概念を理解するには後に学習する「クラス」について理解する必要があるため現状では呼び出し方の違いがあると覚えておいてください。

まとめ

このレッスンではメソッドと組み込み関数について学習しました。
初心者の方はメソッドという概念に少々苦戦するかもしれませんが、現時点では、リストなどに対してドット区切りで記述されている関数のことだと覚えていただいて構いません。

今後のレッスンではメソッドと関数を分けて呼ぶことがありますが、機能や意味としてはほとんど同じものだと思ってください。

では以下にレッスンの内容をまとめます。

  • リストなど特定のデータ型において使用することができる関数をメソッドと呼ぶ
  • Pythonに元から組み込まれている関数を組み込み関数と呼ぶ
  • 組み込み関数は単体で記述するが、メソッドはデータ型に続けてドット区切りで記述する