инициализация класса Python - PullRequest
       11

инициализация класса Python

2 голосов
/ 26 февраля 2012

Народ,

Мне интересно, совпадают ли следующие два определения класса узла?

class node:
    left = None
    right= None
    def __init__(self, data):
        self.data = data


class node:
    def __init__(self, data):
        self.data = data
        self.left = None
        self.right= None

Спасибо, что сообщили мне об этом.

1 Ответ

7 голосов
/ 26 февраля 2012

Нет, они не одинаковы.

Во втором определении node.left и node.right не существует.Атрибуты right и left существуют только в инициализированном экземпляре класса.Однако в первом определении вы можете получить доступ к node.left и node.right непосредственно в классе;вам не нужно создавать его экземпляр.

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