【初級編8】pythonのメソッドと関数の違いを理解しよう

Python入門

今回はPythonのメソッドについて解説します。

メソッドと関数の違いについて混乱している初学者は結構多いです。

両者の違いを理解しておくことで、Pythonの理解をより深めることができます。

本記事ではメソッドとは何か、Pythonでよく使う代表的なメソッド例を紹介します。

文字列、配列、辞書型、それぞれのメソッドをみていきましょう。

Pythonのメソッドとは?

メソッドとは、データ型ごとに用意された機能のことです。

通常メソッドは以下のような形式で使います。

{変数名}.メソッド名(引数)

引数を指定することで、その引数に対して処理を行ってくれます

メソッドを使うことで、必要な処理を自分で書く必要がなくなります。

メソッドから返却されたデータは、プログラム内でいつでも活用可能です。

メソッドは関数とは異なり、特定のデータ型に対してのみ使用ができます

Pythonの関数とは?

関数もメソッドと同じく、引数を指定すると、それに対し処理を自動で行ってくれるものです。

メソッドとの違いは、関数は単独で呼び出せるということです。

つまり、変数を指定しなくても良いということであり、データ型に関連せず呼び出すことができます。

たとえばprint関数は引数を指定すれば、そのデータを表示してくれます。

関数とメソッドにはこのような違いがあるので気をつけましょう。

文字列のメソッド例

Pythonの代表的なメソッド一覧を紹介します。

メソッドはデータ型ごとに別のものが用意されています。

そこで、文字列、リスト、辞書型に分けて、それぞれのメソッドを紹介しましょう。

まずは文字列のメソッドを紹介します。

  • replace
  • find
  • upper

replace

replaceは文字列を置換してくれるメソッドです。

○コード例

numbers = '11111-2222-3333'
print(numbers.replace('-', '&'))

○実行結果

上記の例では「-」を「&」で変換しています。

そのため「11111&2222&3333」という実行結果になりますね。

第一引数に指定した文字列を第二引数で指定した文字列に変換してくれます。

find

findは指定した文字列が、何文字目にあるか判定してくれるメソッドです。

○コード例

fruit = 'banana apple watermelon yuzu'
print(fruit.find('apple'))

○実行結果

上記の例ではfruitという文字列から「apple」が何文字目にあるか判定しています。

upper

upperは指定した文字列を大文字に変換できるメソッドです。

○コード例

fruit = 'banana apple watermelon yuzu'
print(fruit.upper())

○実行結果

上記の例では、fruitに格納された文字列が全て大文字になっています。

リストのメソッド例

続いてリストのメソッド例を紹介しましょう。

  • append
  • extend
  • clear

append

appendはリストに文字列を追加できるメソッドです。

○コード例

fruit = ["banana", "apple", "watermelon", "yuzu"]
fruit.append("cherry")
print(fruit)

○実行結果

上記の例ではfruit配列の最後に「cherry」という文字列を追加しています。

extend

extendは1つのリストにもう1つのリストを追加できるメソッドです。

○コード例

fruit = ["banana", "apple", "watermelon", "yuzu"]
fruit.extend(["lemon", "peach"])
print(fruit)

○実行結果

上記の例ではfruit配列の最後に「lemon」と「peach」を追加しています。

clear

clearは、全ての要素を削除できるメソッドです。

○コード例

fruit = ["banana", "apple", "watermelon", "yuzu"]
fruit.clear()
print(fruit)

○実行結果

上記の例ではfruit配列の値を一括で削除しています。

辞書のメソッド例

最後に辞書型のメソッド例を紹介します。

  • key
  • values
  • items

key

keyメソッドは、辞書型のkey部分のみを取り出したい場合に使います。

○コード例

name = {1:"太郎", 2:"花子", 3:"二郎"}

for k in name.keys():
    print(k)

○実行結果

上記の例ではnameのkeyである「1」「2」「3」のみが取り出せています

values

valuesメソッドは、辞書型のデータ部分のみを取り出したい場合に使います。

○コード例

name = {1:"太郎", 2:"花子", 3:"二郎"}

for v in name.values():
    print(v)

○実行結果

上記の例ではnameのデータである「太郎」「花子」「二郎」のみが取り出せています

items

itemsは、辞書型のkeyとデータを両方取り出す場合に使います。

○コード例

name = {1:"太郎", 2:"花子", 3:"二郎"}

for k,v in name.items():
    print(k,v)

○実行結果

上記の例では、keyとデータが「スペース」区切りで表示されていますね。

まとめ

本記事ではPythonのメソッドについて解説しました。

それぞれのデータ型で使うメソッドがお分かり頂けたでしょうか?

メソッドには様々な種類があり、使い方と返却されるデータを知っておくことが肝心です。

本記事で紹介したもの以外にもまだまだメソッドは多くあります。

メソッドを知っておくと複雑な処理も簡潔に書けるので、メソッドは覚えておいて損はないでしょう。

次回はpythonのクラスを解説します。

❤内容は役に立ちましたか?皆さまのご意見が励みになります☺
YesNo
無料でスキルを学んでからIT業界に転職

そろそろ本気で将来のことを考えなくちゃ……手に職をつけてIT業界に転職したいなぁ。でも、業界未経験だから、なんか敷居が高そう、と思っている方へ。

これからIT業界への転身を目指すあなたに、無料でスキルアップできて、平均で年収は90万円もアップできるんです。

Python入門
【この記事を書いた人】
谷津弘樹

某自社開発のIT企業に勤めていた元webプログラマーです。主にサーバーサイド側を担当し、phpを使った開発経験があります。現在は退職しフリーランスライターとして活動中。IT系の記事を主に執筆し生計を立てています。

タイトルとURLをコピーしました