Почти на любом языке ответ будет "это зависит".
В основном это зависит от того, достаточно ли умен компилятор, чтобы определить, может ли длина списка или массива измениться, пока вы находитесь в цикле.
Это вряд ли будет определено спецификацией языка.
Так что, вероятно, можно предположить, что компиляция не сможет понять это. Если вы действительно уверены, что длина объекта не изменится, не стесняйтесь сначала рассчитать длину и использовать ее в своих конструкциях управления циклом.
Но остерегайтесь других тем ...