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
。這裡 z
是可選引數,因為它設定了預設值。這使得其他兩個引數 x
和 y
是強制性的。對於 Object 1
,沒有為 z
引數傳遞任何值,從輸出中我們可以看到 z
考慮了預設值。而且,對於物件 3,100
被傳遞給 z
引數,從輸出中,我們可以看到 100
被認為超過了預設 0
值。
作者: Vaibhav Vaibhav