Python 中類建構函式的可選引數

Vaibhav Vaibhav 2022年12月21日
Python 中類建構函式的可選引數

顧名思義,可選引數是不強制傳遞值的引數。對於這樣的引數,評估一個預設值。如果為此類引數傳遞了某個值,則新值將覆蓋預設值。

在本文中,我們將學習如何在 Python 中為類設定可選引數。

在 Python 中為類建構函式設定可選引數

要在 Python 中為類新增可選引數,我們必須為類的建構函式簽名中的引數分配一些預設值。新增預設值是一項簡單的任務。我們必須將引數等同於它們的預設值,例如 x = 3name = "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 類建構函式接受三個引數:xyz。這裡 z 是可選引數,因為它設定了預設值。這使得其他兩個引數 xy 是強制性的。對於 Object 1,沒有為 z 引數傳遞任何值,從輸出中我們可以看到 z 考慮了預設值。而且,對於物件 3,100 被傳遞給 z 引數,從輸出中,我們可以看到 100 被認為超過了預設 0 值。

作者: Vaibhav Vaibhav
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

相關文章 - Python Class