溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中ChainMap如何管理默認參數值

發布時間:2021-09-12 09:20:03 來源:億速云 閱讀:224 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“python中ChainMap如何管理默認參數值”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“python中ChainMap如何管理默認參數值”這篇文章吧。

1、ChainMap管理方法和函數中的默認參數值。

2、ChainMap對象以kwargs和defaults為參數。這個順序可以確保在實例類中手動提供的。

參數優先于defaults值。

實例

假設你正在編寫一個管理貴公司員工數據的應用程序。你有以下類別,代表一個通用用戶:

在某些情況下,您需要添加一個功能工訪問CRM系統的不同組件。你的第一個想法是修改user來添加新功能。但這可能會使類太復雜,所以你決定創建一個子類CRMUser來提供所需的功能。

這一類以用戶name和CRMcomponent為參數。它還需要一些**kwargs。您希望通過CRMUser為基類的初始值設置項提供合理的默認值來實現,而不會失去**kwargs。以下是用以下方法解決問題的ChainMap:

from collections import ChainMap
 
class CRMUser(User):
    def __init__(self, name, component, **kwargs):
        defaults = {"user_id": next(component.user_id), "role": "read"}
        super().__init__(name, **ChainMap(kwargs, defaults))

在這個代碼示例中,您將創建user.類初始化,以name、component和**kwargs為參數。然后,你創建一個本地字典,包括user_id和默認值role。接著.__init__()使用super().在此調用中,您的name直接傳輸到父級的初始值設置項,并使用鏈映射為其他參數提供默認值。

以上是“python中ChainMap如何管理默認參數值”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女