Встроенные функции Python для объекта класса? - PullRequest
0 голосов
/ 04 ноября 2019

Я новичок в питоне. Я слышал, что все это объект, когда дело доходит до Python, даже если класс или функция.

Насколько я знаю, объект класса создается при запуске программы. Поэтому мне интересно, есть ли какая-нибудь функция для инициализации переменных класса или выполнения каких-либо действий.

init функция не может сделать, потому что ее параметром является self, который для экземпляра класса. Я хочу получить доступ к самому классу.

class Example():

    def __init__(self):
# I know that this function is called when an instance of this class is created
        pass


    def __something__(cls):
# Is there some function for initializing class object?
# What I wanna do is I want to initialize class variables or call some functions...
# But __init__ function can't do because its parameter is self.
        pass

Ответы [ 2 ]

3 голосов
/ 04 ноября 2019

В Python объект класса создается во время выполнения, поскольку Python является Динамическим языком .

Так что, если вы хотите инициировать переменные класса, вы можете просто установить их сразу после определения класса

class Cls:
  cls_var = "before"

print(Cls.cls_var)
Cls.cls_var = "after"
print(Cls.cls_var)

это напечатало бы "до" и "после"

0 голосов
/ 04 ноября 2019

вы можете управлять классом, который вы определили напрямую.

например, ваш класс называется Пример, вы можете использовать метод buildin dir, чтобы увидеть метод класса (dir(Example)), используйте тип, чтобы увидеть класстип (type(Example)), __dict__ см. атрибуты класса (Example.__dict__) ...

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