Vai Python ir ģenerators?
Vai Python ir ģenerators?

Video: Vai Python ir ģenerators?

Video: Vai Python ir ģenerators?
Video: 48 Генераторы и итераторы. Выражения -генераторы в Python 2024, Novembris
Anonim

Kas ir a Python ģenerators (Mācību grāmatas definīcija) A Python ģenerators ir funkcija, kas atgriež a ģenerators iterators (tikai objekts, kuru varam atkārtot), izsaucot ražu. ienesīgumu var izsaukt ar vērtību, un tādā gadījumā šī vērtība tiek uzskatīta par "ģenerēto" vērtību.

Turklāt vai Python diapazons ir ģenerators?

diapazons ir nemainīgu atkārtojamu objektu klase. To iterācijas uzvedību var salīdzināt ar sarakstu s: jūs nevarat izsaukt nākamo tieši uz tiem; jums ir jāiegūst iterators, izmantojot iter. Tātad nē, diapazons nav a ģenerators . Tie ir nemainīgi, tāpēc tos var izmantot kā vārdnīcas taustiņus.

Turklāt kāda ir Python raža? Īsumā, raža paziņojums tiek izmantots, lai definētu ģeneratorus, aizstājot funkcijas atgriešanos, lai sniegtu rezultātu tās izsaucējam, neiznīcinot vietējos mainīgos. Atšķirībā no funkcijas, kur katrā izsaukumā tā sākas ar jaunu mainīgo kopu, a ģenerators atsāks izpildi no vietas, kur tā tika pārtraukta.

Tātad, kāpēc Python tiek izmantoti ģeneratori?

Ģeneratori ir bijusi svarīga sastāvdaļa Python kopš tiem tika ieviests PEP 255. Ģenerators funkcijas ļauj deklarēt funkciju, kas darbojas kā iterators. Tie ļauj programmētājiem izveidot iteratoru ātri, vienkārši un tīrā veidā. Iterators ir objekts, kuru var atkārtot (cilpu).

Kā darbojas Python ģenerators?

A Python ģenerators ir funkcija, kas rada rezultātu secību. Tas darbojas saglabājot savu lokālo stāvokli, lai funkciju varētu atsākt tieši no vietas, kur tā tika pārtraukta, kad tā tiks izsaukta nākamajās reizēs. Tādējādi jūs varat domāt par a ģenerators kā kaut kas līdzīgs jaudīgam iteratoram.

Ieteicams: