Простите меня, если «перегрузкой» не правильный термин здесь ...Реферирование себя в то время как перегрузка методов класса
Я пытаюсь сделать что-то вроде этого:
class Length:
def __init__(self, length = 0):
self._length = length
def twice(self, length = self._length):
return length*2
Как вы можете видеть, я Я пытаюсь ссылаться на self._length
в аргументе twice()
. Python это не нравится. Я получаю NameError: name 'self' is not defined
.
Есть ли хороший способ присвоить значение по умолчанию, как это, и получить то, что я хочу?
Спасибо! Это имеет смысл. Я надеялся, что мне не придется добавлять даже * две строки кода, но я вижу, что это, наверное, лучший способ. – mrKelley
Если вы беспокоитесь о сохранении линейных каналов, вы можете использовать: 'return length is not None и length или self._length'. Это оставит больше линейных каналов для всех нас! – tdelaney
Или просто используйте классический Mac и сделайте свою часть, чтобы контролировать перенаселение CR, вместо того, чтобы способствовать перелову LF. – abarnert