Pythonのメソッドとは何か?
なかなか分かりにくく苦労しました。
メソッドについてです。
簡単に言えば変数に名前を付けて呼び出す物です。
何だかよく分かりませんよね。
実際にコードを書いて起動しましょう。
address = 'Tokyo,Japan'
print( address.split(' , '))
>['Tokyo' , 'Japan']と出ます。
splitってのは特定の文字列を区切る関数です。
リスト型で出てきます。
文字列型関数は書き方は今までとは違います。丸括弧()ないにドット'を書きます。
今のコードだと
split(' , ')
さらに変数名の後にドット.も必要になります。
今のコードなら
print( address.split(' , '))
addressと言う変数の後に.ですね。
メソッドってのは
このコードならprint( address.split(' , '))
文字列型データ(address)の関数(split)です。
あるデータ型が自分専用の関数がメソッドなんです。
さらにカンマ、でなく文字を入れてもsplitメソッドは分割が出来ます。
address = 'Tokyo,Japan'
print( address.split(' o '))
>['T' , 'ky', "Japan']と出ます。
これは 'Tokyo,Japan'からoを2つ取り出して
oが無くなった部分にカンマ、を入れた3分割したものです。
文字を抜き取り分割する使い方も出来るんです。
さらにメソッドには引数。
つまり()内に何も入れずに呼び出すものもあるのです。
そう、なかなか奥深いんです。
それがupperメソッドです。
address = 'Tokyo,Japan'
print( address.upper())
>TOKYO JAPANと出ます。
upperメソッドは全ての文字を大文字にして返します。
引数は全くありませんが
upper()
()だけは省略出来ません。
これはメソッドや関数を引き出してるのをPythonに認識させるためです。
メソッドの戻り値は変数使っても出来ます。
address = 'Tokyo,Japan'
upper_address = address.upper()
print( upper_address())
>TOKYO JAPANと出ます。
このようにupper_addressって変数を使えば
同じ結果になります。
ちなみに良く聞くのがメソッドと関数の違いだが。
簡単に言えば単独で呼び出しできるのが「関数」で変数や値に付けて呼び出すのが「メソッド」です。
なかなか基礎の理解も苦労しましたが
もちろんメソッドもPython極めるには避けては通れません。
しっかり使いこなせるようにしたいものです。