Përmbledhje

Prezantimi

Raste te perdorimit

Kur fillova të kodoj në ditët e shkollës, rreshti i parë që shtypa ishte "hello world". Kjo praktikë duket si një prirje e zakonshme për të gjithë fillestarët. Ne mësojmë kodimin duke shkruar programe të vogla-të vogla si shuma e një liste numrash, numra produkti, gjetja çift-tek dhe shumë të tjera. Por si fillestar, ne kurrë nuk kujdesemi për menaxhimin e kujtesës, kohën e përpunimit ose shkrimin e kodit të pastër dhe konciz.

Më tej, ne mësojmë se si të shkruajmë funksione. Funksioni i shkrimit është një nga hapat e parë dhe themelor për të shkruar kodin e nivelit të lartë. Ai siguron modularitet në kodin tonë. Pasi të deklarojmë një funksion, ne mund të telefonojmë në çdo kohë nëse kërkohet dhe të shmangim përsëritjen e kodeve.

Në Python, ne deklarojmë një funksion me fjalën kyçe def. Për shembull:

shkruani një program për të kthyer një listë numrash deri në n.

Ky funksion list_num() do të kthejë një listë me numra deri në n, por përpara se të kthejë ruan të gjitha vlerat në memorie.

Supozoni se duhet të kthejmë një numër të madh vlerash dhe jemi një lloj memorie, atëherë një listë nuk do të jetë një mënyrë e mirë për të nxjerrë të gjithë numrat e kërkuar. Këtu funksioni i gjeneratorëvevjen në shpëtim.

Funksioni gjenerator kthen një vlerë të vetme në çdo përsëritje. Është gjithashtu një funksion përsëritës dhe ne mund t'i marrim artikujt një nga një duke përdorur funksionin për ciklin ose funksionin tjetër ().

Kur deklarojmë fjalën kyçe yield në funksionet normale të python, ajo bëhet një gjenerator.

mund të përdorim gjithashtu next() për të kthyer çdo artikull:

x = lista_num (10)

print (tjetër (x)

print (tjetër (x)

.

.

.

mund të përsëritet deri në 10 herë

Ne gjithashtu mund ta bëjmë të kuptuarit e listës një funksion gjenerues.

Kuptimi i listës me kllapa është një gjenerues.

num = [i për i në varg(10)]

num = (i për i në intervalin (10))

Gjeneratorët përmirësojnë performancën dhe kthejnë vlerën sipas kërkesës. Që do të thotë se kërkon më pak memorie. ne nuk kemi nevojë të presim për të gjeneruar të gjitha vlerat siç bëjmë kur kërkojmë një listë vlerash.