Вторая функция в листинге 10.5 хранит abc[0] в виде временной переменной перед запуском цикла. Это делает байт-код, выполняемый внутри цикла, короче байт-кода первой функции, так как abc[0] не осуществляет поиск при каждой итерации. Измерения с timeit показывают, что вторая версия быстрее на 10 %; она выполняется на целую микросекунду быстрее! Естественно, заниматься оптимизацией ради такой выгоды не имеет смысла, если, конечно, операция не повторяется миллиарды раз, — для определения этого и нужно заглянуть внутрь процесса с помощью модуля dis