Pythonに限らず、プログラミングの学習を始めたばかりの方は、オブジェクトと聞いても、何を指すのか直感的には分かりづらいと思います。
この辺りは、厳密に理解していなかったとしても、プログラミングの実践上は、それほど障害にはならないと思います。ただし、もちろん正しい知識を持っている方が、上達は早くなるでしょう。
そこで、ここではPythonのオブジェクトとはどういうものなのかを解説したいと思います。
1. Pythonのオブジェクトとは
Pythonの値はすべてオブジェクトです。
「オブジェクト」とは、データ(値)とメソッドをもっているもののことです。オブジェクトは、データは変数で、メソッドは関数で定義されています(詳しくは「Pythonの変数」と「Pythonの関数」をご覧ください)。
通常の関数は、len(“abc”)のように、それを呼び出すと実行することができます。
しかし、オブジェクトでいうメソッドは、どのオブジェクトを対象にしてメソッドを実行するかまで指示しなければ機能することができません。
2. Pythonのオブジェクトのメソッドの基本書式
オブジェクトのメソッドを実行するには、次のように書きます。
オブジェクト.メソッド()
例えば、文字列はstr型のオブジェクトです。これに対して、upper() というメソッドを実行するには、以下のように書きます。なおupper()は、文字列を大文字化するメソッドです。
s = "hello python"
s.upper()
以下のように、文字列を変数に入れずに、直接メソッドを実行することもできます。
"hello python".upper()
upper()は、文字列に対して機能するメソッドです。そのため、以下のように、オブジェクトが数値の場合はエラーが出ます。
s = 1
s.upper
3. まとめ
最初にも書きましたが、オブジェクトとは、値とメソッドを持っているもののことです。
プログラミングを始めたばかりの時は、
- 変数
- 値
- 関数
- メソッド
などの違いに混乱する場合もあるかもしれません。「Pythonの変数」「Pythonの関数」「Pythonの文字列」などをご覧いただくと次第に分かるようになっていきます。焦らず学習を進めていきましょう。
コメント