Использование класса Python в качестве контейнера данных - PullRequest
45 голосов
/ 29 июля 2010

Иногда имеет смысл группировать связанные данные вместе.Я склонен делать это с помощью слова, например,

self.group = dict(a=1, b=2, c=3)
print self.group['a']

Один из моих коллег предпочитает создавать класс

class groupClass(object):
    def __init__(a, b, c):
        self.a = a
        self.b = b
        self.c = c
self.group = groupClass(1, 2, 3)
print self.group.a

Обратите внимание, что мы не определяем какие-либо методы класса.

Мне нравится использовать dict, потому что я люблю минимизировать количество строк кода.Мой коллега считает, что код будет более читабельным, если вы используете класс, и в будущем вам будет проще добавлять в него методы.

Что вы предпочитаете и почему?

Ответы [ 11 ]

1 голос
/ 29 июля 2010

На языке, который его поддерживает, я бы использовал struct. Словарь был бы ближе всего к структуре в Python, по крайней мере, насколько я вижу.

Не говоря уже о том, что вы можете добавить метод в словарь в любом случае, если вы действительно хотите;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...