Есть ли обоснование, чтобы решить, какую конструкцию из try или if использовать, когда значение переменной имеет значение?
Например, существует функция, которая возвращает либо список, либо не возвращает значение. Я хочу проверить результат перед его обработкой. Какое из следующего было бы более предпочтительным и почему?
result = function();
if (result):
    for r in result:
        #process items
или
result = function();
try:
    for r in result:
        #process items
except TypeError:
    pass;
