я в настоящее время имеет следующие два способа:Как инициализировать атрибуты класса?
class Venue:
store = Database.store()
ids = [vid for vid in store.find(Venue.id, Venue.type == "Y")]
def __init__(self):
self.a = 1
self.b = 2
ИЛИ
class Venue:
@classmethod
def set_venue_ids(cls):
store = Database.store()
cls.ids = [vid for vid in store.find(Venue.id, Venue.type == "Y")]
def __init__(self):
self.a = 1
self.b = 2
И перед использованием/инстанцирования класса я бы назвал:
Venue.set_venue_ids()
Что бы быть правильным способом достижение этого?
Если это первый способ, что бы я сделал, если для создания атрибута потребовалась более сложная логика, которую можно было бы сделать проще с помощью функции?
Или существует совершенно другой способ структурирования моего кода для выполнения того, что я пытаюсь сделать?
Почему вы хотите эти атрибуты являются атрибутами класса, а не атрибутами экземпляра? – valignatev
@valentjedi В моем фактическом коде каждый объект объекта должен будет получить доступ к этому списку, чтобы делать проверки. –
@Giri Итак, может ли этот параметр быть аргументом в некотором цикле? –