Найти - Пользователи
Полная версия: Исключения от подключенного модуля
Начало » Python для новичков » Исключения от подключенного модуля
1
bsv_144
Всем добрый день !

Как правильно ловить пользовательские исключения.

Пишу скрипт которы работает по API с сервреров Zabbix.
Подключаю класс ZabbixAPI
from zabbix_api import ZabbixAPI
Выполняю запрос к серверу zabbix через
try:
zapi.host.create({“host”:hostName,“name”:visibleName,“interfaces”:,“groups”:groupsid,“templates”:templatesid})
print(“Хост”, hostName, “создан”)
except zabbix_api.Already_Exists:
print(“Хост”, hostName, “уже существует”)

При этом если хост сущестувует то генерится исключение zabbix_api.Already_Exists
Это исключение можно поймать только если подключить модуль zabbix_api польность, т.е. Import zabbix_api
Ранее читал что подключение модуля полностью есть нехорошая практика.

Прошу совета гуру Python как правильно поступить в данном случае ?


Master_Sergius
Ну так в чём проблема импортировать ещё и нужные исключения?
JOHN_16
bsv_144
Вот так плохо и не рекомендуется делать:
 from module import *
foo()
bar()
Вот так нормально:
 import module
module.foo()
module.bar()
Можно через from module import импортировать все необходимые имена через запятую
 from module import foo, bar
foo()
bar()
bsv_144
Спасибо за ответы.
Сделал from zabbix_api import Already_Exists и всё пошло как надо.

Много читал про импорт модулей и особо не обращал внимание по чему плохо from module import *
Теперь всё встало на свои места :-)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB