Вопрос 1:
Здесь "ответ" - это класс, так что означают следующие @ivar response и @type response? Как оценить ответ. Ответ - это метод?
@ ivar и @type - это соответственно имя переменной и тип переменной.
Этот код написан правильно. Таким образом, чтобы сообщить пользователю, что делает каждая переменная и каков тип каждой переменной, это соглашения, используемые программистами.
Вы также можете иногда видеть @param @type @rtype @return и т. д.
Для второй части вы можете увидеть
@ivar response: The response message
@type response: dns.message.Message object
, который говорит, что переменная ответа является объектом класса dns.message.Message.
Так что он будет иметь некоторые атрибуты и методы, связанные с ним. Для получения дополнительной информации см. Справку этого класса dns.message.Message.
Вопрос 2:
A = dns.resolver.query (домен, 'A')
А здесь объект? Согласно моему пониманию:
Объект = модуль. класс ()
Но пример формата здесь:
A = модуль. метод (параметр),
Может ли такой формат также генерировать объект?
В Python все является объектом.
Для объекта = модуль. учебный класс()
Не всегда необходимо, у вас могут быть методы / функции для создания объекта класса.
По сути, любое определение функции создаст новый объект некоторого типа. * 1032 например *
def sum():
return 10
Эта простая функция также создает объект типа int. Теперь вы можете изменить аргументы / определение, чтобы получить обратно определенный вид объектов.
Для вашего случая, когда у нас есть какое-то приложение с соединениями с сервером / соединениями с базой данных / веб-соединением apis и т.д.
- Запрос на подключение
- Ответ соединения
Скажем, например, что вы отправляете запрос GET на сервер, и сервер отвечает 200 OK (соединение установлено). Ваш запрос GET будет запросом на соединение, а 200 OK - ответом на соединение.
При программировании такого рода поведения у нас обычно есть метод запроса, который возвращает мне объект класса Response.
Третий вопрос:
A = dns.resolver.query (домен, 'A')
Если A здесь объект, следуйте этой строке:
для меня в A.response.answer:
A как объект, могу ли я продолжать использовать метод модуля dns.resolver
"response.answer" на A, мое понимание верно?
Да, если response.answer - это метод, связанный с A, вы, безусловно, можете его использовать.