Python のクラスコンストラクターのオプションの引数
Vaibhav Vaibhav
2022年12月21日
名前が示すように、オプションの引数は、値の受け渡しが必須ではない引数です。このような引数については、デフォルト値が評価されます。そのような引数に何らかの値が渡されると、新しい値がデフォルト値を上書きします。
この記事では、Python でクラスのオプションの引数を設定する方法を学習します。
Python でクラスコンストラクターのオプションの引数を設定する
Python のクラスにオプションの引数を追加するには、クラスのコンストラクター関数シグネチャの引数にいくつかのデフォルト値を割り当てる必要があります。デフォルト値の追加は簡単な作業です。引数を x = 3
、name = "Untitled"
などのデフォルト値と同一視する必要があります。これらのオプションの引数に値が渡されない場合、デフォルト値が考慮されます。次の Python コードは、上記の概念を表しています。
class Point:
def __init__(self, x, y, z=0):
self.x = x
self.y = y
self.z = z
def __str__(self):
return f"X: {self.x}, Y: {self.y}, Z:{self.z}"
print(Point(1, 2)) # Object 1
print(Point(54, 92, 0)) # Object 2
print(Point(99, 26, 100)) # Object 3
出力:
X: 1, Y: 2, Z:0
X: 54, Y: 92, Z:0
X: 99, Y: 26, Z:100
クラス Point
コンストラクターは、x
、y
、および z
の 3つの引数を受け入れます。ここで、z
はデフォルト値が設定されているため、オプションの引数です。これにより、他の 2つの引数、x
と y
が必須になります。Object 1
の場合、z
引数に値が渡されず、出力から、z
のデフォルト値が考慮されていることがわかります。また、オブジェクト 3 の場合、z
引数に 100
が渡され、出力から、100
がデフォルトの 0
値よりも考慮されていることがわかります。
著者: Vaibhav Vaibhav