У чым розніца паміж цыклам для цыкла і ітэратарам у Python?


адказ 1:

A для цыклу - гэта тып ітэратара. Дакладней, ён стварае аб'ект ітэратара метадам __iter __ () для аб'екта ўводу.

Ітэратары - гэта аб'екты, якія рэалізуюць пратакол ітэратара. Па сутнасці, гэта азначае, што ў іх ёсць спосаб __next __ () для выкліку ітэрабельных аб'ектаў (напрыклад, спісаў), і яны кідаюць выключэнне StopIteration, калі няма больш запісаў для ітэрацыі.

Іншыя прыклады ўбудаваных функцый, якія генеруюць ітэратары, гэта карта (), скарачэнне (), фільтр () або пералічэнне ().