AttributeError: «Объект не имеет атрибута» - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть следующий блок кода:

class HwSwitch(object):

    def __init__(self):
        pass

    def _create_channel(self):
        try:
            self.channel = self.ssh.invoke_shell()
        except SSHException:
            raise SSHException("Unable to invoke the SSH Command shell")

    def _send_cmd_to_channel(self, cmd):
        try:
            time.sleep(1)
            self.channel.send(cmd + '\r\n')
            out = self.channel.recv(9999)
        except SSHException:
            raise SSHException("Execution of command '%s' failed" % cmd)
        return str(out)

Но я всегда получаю сообщение об ошибке: AttributeError: У объекта 'HwSwitch' нет атрибута 'channel'.Кажется, что проблема где-то на self.channel.send(cmd + '\r\n'), но я не могу видеть, где.Что-то не так (может быть отступ?).Спасибо

1 Ответ

0 голосов
/ 20 февраля 2019

Вы обращаетесь к 'каналу' как к переменной экземпляра, либо создайте ее в __init__, либо позвоните _create_channel перед вызовом _send_cmd_to_channel.

Также обратитесь к this

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