В теле цикла for в fib5() используется распаковка кортежа — возможно, слишком хитроумным способом. Кому-то может показаться, что это сделано для краткости в ущерб удобочитаемости. Другие полагают, что краткость сама по себе улучшает удобство чтения. Суть в том, что переменной last присваивается предыдущее значение next, а next — предыдущее значение last плюс предыдущее значение next. Это позволяет избежать создания временной переменной для хранения старого значения next после изменения last, но перед изменением next. Такое применение распаковки кортежа для определенных переменных широко распространено в Python.
Классические задачи Computer Science на языке Python
·
Дэвид Копец