Как проверить вывод строкового кода в функции Python - PullRequest
0 голосов
/ 10 марта 2019

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

def data():
   dev = Device(host="1.1.1.1", user="test", password="test123", port=22, 
   normalize=True)
   dev.open()
   resp = dev.rpc.get_interface_information(extensive=True)
   dev.close()

   for x in resp.findall(xxxxxxxxx): 
      if aaa
      else:

без данных функции () я могу просто напечатать print (соответственно) и print (x)), чтобы проверить вывод команды rpc send или цикла loop выше.Но когда я добавляю команду внутри функции, я не могу сделать то же самое ... в функции также есть несколько других строковых кодов цикла for и других команд rpc send, которые мне нужны для проверки выходных данных.я проверяю конкретный вывод строки кода внутри функции python ниже .... я попытался добавить data () и вернуться ниже, но ничего не возвращается

def data():
   dev = Device(host="1.1.1.1", user="test", password="test123", port=22, 
   normalize=True)
   dev.open()
   resp = dev.rpc.get_interface_information(extensive=True)
   return resp
   dev.close()

   for x in resp.findall(xxxxxxxxx): 
      if aaa
      else:
   return x 
data()

Это потому, что мне нужно убедиться, чтоЛинейный код, используемый в функции, является правильным, а вывод - в порядке.Пожалуйста, помогите и покажите мне правильный способ сделать это.Спасибо.

Произошла ошибка NameError: имя 'request' не определено

def data(request):
   dev = Device(host="1.1.1.1", user="test", password="test123", port=22, 
   normalize=True)
   dev.open()
   resp = dev.rpc.get_interface_information(extensive=True)
   print(resp)
   dev.close()

   for x in resp.findall(xxxxxxxxx): 
      if aaa
      else:
   return resp 
data(request)

1 Ответ

0 голосов
/ 10 марта 2019

Оператор печати должен работать внутри функции.Я предполагаю, что вы кладете заявление на печать после возвращения.В коде вы ничего не указали после того, как оператор return будет выполнен, поскольку оператор return выйдет из функции.Убедитесь, что вы поставили return в конце, когда закончите со всеми задачами, которые вы хотите, чтобы выполняла ваша функция.

Кроме того, в функции может быть только один оператор возврата.Если вы хотите вернуть несколько переменных, поместите их в список или используйте что-то вроде

return a, b

, а затем перехватите их вот так

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