Я видел, что он использовался как полезный шаблон, когда есть много потенциальных точек выхода для функции, но тот же код очистки всегда требуется независимо от того, как функция выходит.
Это может сделать утомительно, если / else - если дерево намного легче читать, просто нужно ломаться всякий раз, когда достигается точка выхода, а остальная часть логической строки впоследствии.
Этот шаблон также полезен на языках, которые У меня есть инструкция goto. Возможно, именно там исходный программист узнал образец.
Спасибо,
Это помогло,
Я установил модуль Azure, который шел с graphrbac версии 0.40
$pip freeze | grep rbac
azure-graphrbac==0.40.0
После проверки Azure- graphrbac текущая версия 0.60
Мне пришлось удалить только azure-graphrbac и переустановить текущую версию с помощью pip. Это решило проблему.
Несмотря на то, что он выдал ошибку, что он не совместим с модулем Azure, на данный момент я не вижу в этом проблемы.
azure 4.0.0 has requirement azure-graphrbac~=0.40.0, but you'll have azure-graphrbac 0.60.0 which is incompatible.