Савети за програмирање

10 најбољих и корисних савета за убрзање вашег Питхон кода

10 најбољих и корисних савета за убрзање вашег Питхон кода

Ако вас неко пита - „Који је тренутно најбрже растући програмски језик на свету?”Одговор ће бити једноставан. Његов питон. Популарност у свету је захваљујући једноставној синтакси и богатим библиотекама. Данас са питхоном можете учинити готово све: наука о подацима, машинско учење, обрада сигнала, визуелизација података - ви то именујете. Међутим, многи људи тврде да је питхон мало спор док решава озбиљне проблеме. Али време извршења програма зависи од кода који се напише. Помоћу неких савета и трикова можете убрзати Питхон код и побољшати перформансе програма.

Савети и трикови за убрзање Питхон кода


У случају да тражите начине за убрзање вашег питхон кода, чланак је за вас. Илуструје технике и стратегије за смањење времена извршавања програма. Савети не само да ће убрзати код, већ ће побољшати и вештине питона.

01. Користите уграђене библиотеке и функције


Питхон има мноштво библиотечких функција и модула. Написали су их стручни програмери и неколико пута су тестирани. Дакле, ове функције су високо ефикасне и помажу убрзању кода - нема потребе за писањем кода ако је функција већ доступна у библиотеци. У том погледу узимамо једноставан пример.

# цоде1 невлист = [] за реч на старој листи: нова листа.додати (реч.горњи ())
# цоде2 невлист = мап (стр.горња, стара листа)

Овде је други код бржи од првог, јер је коришћена мапа функције библиотеке (). Ове функције су згодне за почетнике. Ко не жели да пише бржи, као и чисти и мањи код? Стога, користите функције и модуле библиотеке што је више могуће.

02. Права структура података на правом месту


Коришћење одговарајуће структуре података смањиће време извођења. Пре почетка морате размислити о структури података која ће се користити у коду. Савршена структура података ће убрзати питхон код док ће га други забрљати. Морате имати представу о временској сложености различитих структура података.

Питхон има уграђене структуре података као што су листа, скуп, сет и речник. Људи су навикли да користе спискове. Али постоје случајеви када набор или речник функционишу много боље од листа. Да бисте научили више структура података и алгоритама, морате проћи кроз Питхон књиге за учење.

03. Три да минимизирате употребу за Лооп


Прилично је тешко избећи употребу за петља. Али кад год имате прилику да то спречите, стручњаци кажу да то радите. Петља фор је динамична у питхону. Његово време извршавања је више него неко време. Угњежђена петља за много више времена захтева. Две угнеждене петље узимаће квадрат времена у једној петљи фор.

# цоде1 за и у биг_ит: м = ре.тражи (р '\ д 2 - \ д 2 - \ д 4', и) ако је м:… 
# цоде2 дате_регек = ре.компајлирај (р '\ д 2 - \ д 2 - \ д 4') за и у биг_ит: м = дате_регек.тражи (и) ако је м:… 

У овом случају је боље користити одговарајућу замену. Штавише, ако за петље су неизбежне, преместите прорачун изван петље. Уштедеће много времена. То можемо видети на примеру наведеном горе. Овде је 2. код бржи од 1. кода, јер је прорачун извршен изван петље.

04. Избегавајте глобалне променљиве


Глобалне променљиве се у питхону користе у многим случајевима. За декларацију се користи глобална кључна реч. Али време извођења ових променљивих је више од времена локалне променљиве. Коришћење мање њих штеди од непотребне употребе меморије. Осим тога, Питхон брже узима локалну променљиву од глобалне. Када се крећете кроз спољне променљиве, Питхон је истински тром.

Неколико других програмских језика противи се непланираној употреби глобалних променљивих. Бројач је због нежељених ефеката који доводе до већег времена рада. Дакле, покушајте да користите локалну променљиву уместо глобалне кад год је то могуће. Штавише, можете да направите локалну копију пре него што је употребите у петљи, штедећи време.

05. Повећајте употребу разумевања списка


Разумевање листе нуди краћу синтаксу. Прегршт је када се направи нова листа на основу постојеће листе. Петља је обавезна у било ком коду. Понекад синтакса унутар петље постаје велика. У том случају се може користити разумевање листе. Можемо узети пример да бисмо га прецизније разумели.

# цоде1 квадратни_бројеви = [] за н у опсегу (0,20): ако је н% 2 == 1: квадратни_бројеви.додати (н ** 2)
# цоде2 квадратни_бројеви = [н ** 2 за н у опсегу (1,20) ако је н% 2 == 1]

Овде је другом коду потребно мање времена од првог. Приступ разумевању пописа је краћи и прецизнији. Можда неће имати велике разлике у малим кодовима. Али у опсежном развоју, то вам може уштедети време. Дакле, користите разумевање листе кад год имате прилику да убрзате свој Питхон код.

06. Замените опсег () са кранге ()


Ствар домета () и кранге () долази ако користите питхон 2. Ове функције се користе за понављање било чега у петљи фор. У случају распона (), у меморију спрема све бројеве у опсегу. Али кранге () само чува опсег бројева које треба приказати.

Тип повратка ранге () је листа, а кранге () је објекат. На крају, кранге () узима мање меморије и, као резултат, мање времена. Дакле, користите кранге () уместо ранге () кад год је то могуће. Наравно, ово се односи само на кориснике питхон 2.

07. Користите генераторе


У питхону, генератор је функција која враћа итератор када се позове принос кључне речи. Генератори су одличан оптимизатор меморије. Враћају по једну ставку, уместо да враћају све по једну. Ако ваша листа укључује знатан број података и треба да користите један по један податак, користите генераторе.

Генератори рачунају податке у комадима. Стога функција може вратити резултат када се позове и задржати своје стање. Генератори чувају функцијско стање заустављањем кода након што позивалац генерише вриједност и он наставља да се изводи одакле је заустављен на захтјев.

Будући да генератори приступају и израчунавају вредност на захтев, значајан део података не треба у потпуности сачувати у меморији. То резултира знатном уштедом меморије, што на крају убрзава код.

08. Споји жице помоћу Јоин


Спајање је прилично често када се ради са низовима. Генерално, у питхону се повезујемо користећи '+'. Међутим, у сваком кораку операција „+“ ствара нови низ и копира стари материјал. Овај процес је неефикасан и траје много времена. Морамо да користимо јоин () да овде спојимо низове ако желимо да убрзамо наш Питхон код.

# цоде1 к = "И" + "ам" + "а" + "питхон" + "геек" принт (к)
# цоде2 к = "".придружи се (["И", "ам", "а", "питхон", "геек"]) принт (к)

Ако погледамо пример, први код штампа „Иамапитхонгеек“, а други код „И ам а питхон геек“.  Операција јоин () је ефикаснија и бржа од '+'. Такође одржава код чистим. Ко не жели бржи и чистији код? Дакле, покушајте да користите јоин () уместо '+' за спајање низова.

09. Профил свој код


Профилисање је класичан начин оптимизације кода. Постоји много модула за мерење статистичких података програма. Они нам дају до знања где програм троши превише времена и шта треба учинити да бисмо га оптимизовали. Дакле, да бисте осигурали оптимизацију, проведите нека испитивања и побољшајте програм како бисте побољшали ефикасност.

Тајмер је један од профила. Можете га користити било где у коду и пронаћи време извршавања сваке фазе. Тада можемо побољшати програм тамо где траје предуго. Штавише, постоји уграђени модул за профилирање назван ЛинеПрофилер. Такође даје описни извештај о утрошеном времену. Постоји неколико профила, које можете научити читајући књиге о питону.

10. Редовно се ажурирајте - користите најновију верзију Питхона


Постоје хиљаде програмера који редовно додају више функција у питхон. Модули и функције библиотеке које данас користимо сутра ће бити застарели. Програмери Питхона из дана у дан чине језик бржим и поузданијим. Свако ново издање повећавало је своје перформансе.

Дакле, треба да ажурирамо библиотеке на најновију верзију. Питхон 3.9 је сада најновија верзија. Многе библиотеке питхон 2 можда неће радити на питхон3. Имајмо то на уму и увек користите најновију верзију да бисте постигли максималне перформансе.

Коначно, Увиди


Вредност Питхон програмера у свету расте из дана у дан. Па шта чекате! Крајње је време да почнете да учите како да убрзате питхон код. Савети и трикови које смо пружили сигурно ће вам помоћи да напишете ефикасне кодове. Ако их следите, можемо се надати да ћете моћи побољшати свој код и прећи на напредније питхон ствари.

Покушали смо да прикажемо све главне трикове и савете који су потребни за убрзавање кода. Надамо се да је чланак одговорио на већину ваших питања. Остало је на вама. Међутим, нема краја знању и нема краја учења. Дакле, ако смо пропустили било шта значајно, јавите нам. Срећно учење!

Вулкан за кориснике Линука
Са сваком новом генерацијом графичких картица видимо да програмери игара помичу границе графичке верности и долазе на корак од фотореализма. Али упрко...
ОпенТТД вс Симутранс
Стварање сопствене симулације превоза може бити забавно, опуштајуће и изузетно примамљиво. Због тога морате да испробате што више игара како бисте про...
Водич за ОпенТТД
ОпенТТД је једна од најпопуларнијих игара за пословну симулацију. У овој игри морате створити диван посао превоза. Међутим, почет ћете у почетку око 1...