У меня есть функция, которая может вернуть одну из трех вещей:
- успех (
True
) - сбой (
False
) - поток чтения/разбора ошибок (
None
)
Мой вопрос: если я не должен тестировать True
или False
, как я должен видеть результат. Ниже показано, как я это делаю:
result = simulate(open("myfile"))
if result == None:
print "error parsing stream"
elif result == True: # shouldn't do this
print "result pass"
else:
print "result fail"
это действительно так же просто, как удаление части == True
или я должен добавить тип данных tri-bool. Я не хочу, чтобы функция simulate
выдавала исключение, поскольку все, что я хочу, чтобы внешняя программа делала с ошибкой, регистрирует ее и продолжает.