今日はPythonのドット記法について説明しましょう。
Pythonでのコーディングの経験が少しでもある方や、AskPythonのブログをご覧になっている方は、オブジェクト指向プログラミングという言葉を目にしたことがあるはずです。
これは、実世界のオブジェクトの概念に基づいたプログラミングパラダイムです。
各オブジェクトは、その状態を表す特定の属性と、特定のタスク(関数の実行に相当)を実行させるメソッドを持っています。
Pythonはそのような言語の一つです。
Pythonでは、ほとんどすべての実体がObjectとして取引されます。
そして、これを知ることはドット(.)記法の意味を把握するための基本です。
ドット記法とは?
ドット(.)表記とは、簡単に言うと、異なるオブジェクトクラスのインスタンスの属性や各メソッドにアクセスするための表記方法です。
通常、ドット記法の右端に属性やメソッドを記述しながら、その前にオブジェクトのインスタンスを記述します。
複数のメソッドを持つクラスを作成し、それらのメソッドにアクセスするために(.)記法を使ってみましょう。
クラスとオブジェクトを作成する
class Person():
def __init__( self , name, age):
self .name = name
self .age = age
def sayHello( self ):
print ( "Hello, World" )
def sayName( self ):
print ( f "My name is {self.name}" )
""" First, we create a Person Class that takes two parameters: name, and age. This is an object. The object currently contains two methods: sayHello() and sayName(). Now, we'll see how we can access those attributes and methods using dot notation from an instance of the class. """ |
クラスの準備ができたので、インスタンスオブジェクトを作成しましょう。
#We create an instance of our Person Class to create an object. randomPerson = Person( "Marshall Mathers" , 49 )
#Checking attributes through dot notation print ( "Name of the person: " + randomPerson.name)
print ( "Age of the person: " + str (randomPerson.age) + "years" )
#Accessing the attributes through dot notation randomPerson.sayHello() randomPerson.sayName() |
最後の2行では、
結果は以下の通りです。
Name of the person: Marshall Mathers Age of the person: 49 years
Hello, World My name is Marshall Mathers
|
上記の例で、Pythonでのドット記法の使用に関する疑問が解消されることを願っています。
他にドット表記を使うところは?
Pythonを使ったことがある開発者なら誰でも、(.)記法に出会ったことがあると思います。
ここでは、過去に出会ったことがあるはずの例をいくつか紹介します。
1. リストの長さ
#A simple list called array with 3 elements array = [ 'godzilla' , 'darkness' , 'leaving heaven' ]
#Getting the length of an array array. len ()
|
まず、リストオブジェクトが作成され、その中に3つの値が入っていることに気がつきます。
len()はリストクラスの組み込みメソッドで、リストの要素数を返すと推測されます。
len()メソッドはドット記法でアクセスします。
2. 文字列を分割する
#A random string pun = "The movie Speed didn't have a director...Because if Speed had direction, it would have been called Velocity."
#We use the split method to separate the string into two sections on either side of "..." pun.split( "..." )
|
以上がドット記法の日常的な使用例です。
まとめ
The dot notation is more than just a way to access inner methods. It’s a sophisticated technique to keep your code clean and to the minimum while ensuring complete functionality.