簡體   English   中英

Python類返回多個實例

[英]Python class returning multiple instances

我在想一堂課的設計。 當前,我對數據列表有一個列表理解,該數據實例化了列表的每個成員上的類的實例,因此返回了我的類的實例的列表。

改而采用一個接受列表並返回實例列表的類方法,會更好或更切實可行嗎?

我想知道的是,本質上:

data = [lots of data]
[MyClass(point) for point in data]

要么

@classmethod
def from_list(cls, data_list):
    return [cls(point) for point in data_list]

更好/更多pythonic? 如果很重要,在我打算的用法中,我將始終從數據列表中實例化該類。

就目前而言,它們之間沒有太多選擇。 但是, @classmethod有一個主要的加分點; 它可用於MyClass子類。 與為您可能在列表中實例化的每種類型的對象具有單獨的功能相比,這具有更多的Python風格。

我認為第一種方法會更好(列表理解),因為您將始終從列表中初始化數據。 這使事情變得明確。

暫無
暫無

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

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