Как узнать, в каких исключениях растет библиотека SOAPPy
Это больше вопрос, чем реальная проблема.
У меня есть код с использованием библиотеки SOAPpy в Python:
from SOAPpy import SOAPProxy
...
try:
connection = SOAPProxy(settings.SOAP_URL)
session = connection.login(username, password)
user = connection.getUserInfo(session.session_hash, session.user_id)
groups = connection.getGroups(session.session_hash, settings.GROUP_ID)
group = next(group for group in groups.item
if group.name == settings.GROUP_NAME)
next(member for member in group.member.item
if member.user_name == user.username)
except:
return None
...
Мой вопрос: какое исключение может быть вызвано этой частью кода?
Потому что новый участник говорит, что больше Pythonic пишет все исключения, которые можно вызвать.
С наилучшими пожеланиями, Мороний
1 ответ
Лучший способ получить определенный ответ - прочитать исходный код SOAPpy. Тем не менее, это громоздко и трата практического рабочего времени. Помимо собственных исключений SOAPPy, базовая операционная система может вызывать исключения IOError и OSError и тому подобное.
Поскольку SOAPpy, как и многие другие библиотеки, не указывает, какие исключения он может вызвать, он может быть в основном чем угодно. Таким образом, в этом случае вы не можете быть Pythonic, потому что автор библиотеки выбрал "менее Pythonic" или не задокументировал, как ведет себя библиотека.
Таким образом, урок, который нужно усвоить, заключается в том, что не принимайте ничего должного, но применяйте свой здравый смысл.