Согласно документации PyMongo, исключение pymongo.errors.OperationFailure
будет «возбуждено при сбое операции с базой данных». Таким образом, ваш except
блок оценивается только при возникновении такой ошибки.
Я предполагаю, что под «проверкой существования пимонго» вы подразумеваете что-то вроде:
try:
import pymongo
except:
print("PyMongo not found!")
sys.exit(-1)
Этот метод часто используется для обеспечения откатов (и обратной совместимости), чтобы не "проверять" импорт . Например, в случае кодера / декодера json
мы можем попробовать, есть ли у нас доступная библиотека simplejson
, и использовать библиотеку json
в качестве запасного варианта следующим образом:
try:
import simplejson as json
except ImportError:
import json
Предполагая, что в начале вашего сценария у вас уже есть import pymongo
, я не вижу причины, по которой вам следует проверять или «проверять», что pymongo был импортирован: import pymongo
уже вызовет ImportError
если pymongo
библиотека не найдена.