Python: тип глобального класса против экземпляра - PullRequest
0 голосов
/ 11 октября 2019

Я довольно новичок в Python, поэтому прощаю несколько глупых вопросов:)

Я настраиваю некоторые глобальные const-подобные данные, и я понял, что могу сделать это без жалоб на интерпретатораэто:

# ... in prime.py ...

class GlobalData:
    LongList = [ 0,1,2,3,4,5,6,7 ]

# ... in another module ...

data = prime.GlobalData.LongList[2]

Это безопасно для использования? Возможно, переводчик не жалуется, но может по какой-то причине затормозить позже? Если это не очевидно, мой вопрос касается доступа к членам, использующим класс type вместо класса instance . Например, внутри prime.py я мог бы вместо этого назвать класс GLOBALDATA и добавить GlobalData = GLOBALDATA() внизу.

В C / C ++ я бы использовал другой оператор (: :),но даже тогда мне не разрешили бы получить доступ к нестатическим значениям переменных из типа класса без экземпляра. Я не сравниваю два языка, просто проверяю, понятен ли мой вопрос.

Приемлемы ли они оба? Один лучше для конкретных ситуаций?

Спасибо за любой совет

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