簡體   English   中英

Python 數據類:從 asdict 中省略字段

[英]Python dataclasses: omit field from asdict

我開始大量使用 python 數據類模塊,發現它非常有用。 我特別喜歡可以在每個字段上設置的標志,允許切換比較、初始化等。

然而,我經常發現有一個字段我希望從 class 的 asdict 行為中省略。 在某些情況下,這可能與 dict_factory 參數一起使用,但有時會發生一個字段會導致 asdict function 在通過使用 dict_factory 將其省略之前引發異常。

其他人可以建議一種干凈的方法來做到這一點嗎? 添加到數據類模塊中不是有用的附加標志嗎?

您可以將自定義元數據添加到 field field(metadata={"include_in_dict":True})等字段,並且在 dict_factory 中,您可以先檢查此內容,並在需要時跳過該字段。

if field_.metadata.get("include_in_dict", False):
    continue

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM