У меня есть функция, которая может вернуть одну из трех вещей:
- успех (
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 выдавала исключение, поскольку все, что я хочу, чтобы внешняя программа делала с ошибкой, регистрирует ее и продолжает.