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

Размотримо дубље како бисмо разумели порекло тих модула, заједно са тим како да их креирамо и увеземо за поновну употребу.

Шта је поновна употреба кода и зашто бисте то требали учинити?

Једна од најбољих пракси у раду са већином језика на страни сервера је модуларизација кода тако да се може поново употребити. Будући да је Питхон објектно оријентисан, то је један од оних језика који омогућава поновну употребу кода.

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

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

Ова пракса вам много олакшава и убрзава посао током стварног пројекта. Модуларизација кода такође побољшава брзину извршавања и олакшава тестирање. У основи то чини ваш код ефикаснијим и читљивијим.

Иако се наш пример овде не заснива на објектно оријентисаном програмирању (ООП), о њему морамо кратко разговарати пре него што пређемо на креирање модула.

Код који намеравате да поново користите понекад може бити сам по себи као појединачне функције. Али може бити и у облику методе у а класа. Тада наступа концепт ООП.

Објектно оријентисано програмирање у Питхону

ООП је представљање кодова као независних објеката у облику класе. Сваки објекат тада има своје атрибуте и методе.

Ти атрибути су карактеристике класе, док свака метода дефинише понашање атрибута.

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

Свака класа коју креирате тада узима идентитет. Дакле, када вам треба именовани модул из класе, ви га позивате у односу на ту класу.

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

Шта је објектно оријентисано програмирање? Основе објашњене лаичким терминима

Већина савремених програмских језика подржава парадигму „објектно оријентисаног програмирања“ (ООП). Али шта је заправо ООП и зашто је тако користан?

Стварање функција за вишекратну употребу: практични пример

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

Прво отворите командну линију на било којој локацији на рачунару да бисте започели нови пројекат. У овом случају ћемо користити назив пројекта ворд_цоунт. Да бисте то урадили, откуцајте мкдир ворд_цоунт.

Даље, користите свој омиљени алат за виртуелно окружење за створити ново виртуелно окружење. Ако сте га већ креирали, једноставно га активирајте. Уверите се да сте још увек у директоријуму вашег пројекта.

Као добра пракса, да бисмо креирали функцију бројача речи, прво покушавамо да пронађемо сирову формулу за њено израчунавање. Генерално, можете пронаћи број речи тако што ћете један додати броју размака у реченици. Имајте на уму да, иако вам можда неће бити потребно бројање речи, за ово објашњење је важно како се идеја односи на поновну употребу кода.

Затим отворите уређивач текста на локацији вашег пројекта и креирајте нову Питхон датотеку. У овом случају датотека је именована као вордцоунтер.пи; обавезно користите тачно .пи продужење.

Ево шта бројач речи датотека изгледа овако:

# креирамо променљиву која се назива реч која садржи неке низове
ворд = ['како направити бројач речи у питхону']
# Даље, прођите петљу кроз променљиву да бисте пребројали речи у креираној променљивој
НумберОфВордс = [ЕацхВорд.цоунт ('') + 1 за ЕвериВорд у речи]
принт (НумберОфВордс)
излаз: [8]

Сада када сирови код ради, ми га модулирамо стварањем функције која чини код поновном употребом:

деф ЦоунтВордс (речи):
ако речи нису Ноне:
НумберОфВордс = [Евериворд.цоунт ('') + 1 за сваку реч у речима]
ретурн НумберОфВордс
мивордс = ['прављење бројача речи у питхону']
принт (ЦоунтВордс (моје речи))
излаз: [6]

То је то; створили смо модул бројача речи. Погледајмо како да је поново употребимо.

Увоз креираног модула

Запамтите да сте раније креирали датотеку са именом вордцоунтер.пи. Та датотека садржи функцију која се зове ЦоунтВордс. Ако вам је потребна та функција у новој датотеци и не желите да препишете цео код или функцију, све што треба да урадите је да ту функцију увезете као модул у нову датотеку.

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

Ево како изгледа нова датотека:

фром вордцоунтер импорт ЦоунтВордс
вордс = ["хов то импорт анд реусе иоур цоде ин Питхон"]
ЦоунтВордс (речи)
излаз: [9]

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

Апсолутно увоз вашег створеног модула

Шта ако нова датотека није у истом директоријуму као датотека модула? У тим случајевима морате упутити модул користећи апсолутни увоз.

Да бисмо ово разумели мало даље, претпоставимо да сте креирали нову датотеку у директоријуму вашег пројекта. Али датотека из које намеравате да увезете своју функцију (која је бројач речи, у овом случају), налази се у другој фасцикли у оквиру директоријума вашег пројекта субворд_цоунт.

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

фром субворд_цоунт.вордцоунтер импорт ЦоунтВордс
вордс = ["хов то импорт анд реусе иоур цоде ин Питхон фор филес ин дифферент фолдерс."]
ЦоунтВордс (речи)
излаз: [14]

Током апсолутног увоза, Питхон прегледава родитељску мапу (субворд_цоунт у овом случају) и лоцира датотеку или модул који садрже функцију од интереса (ЦоунтВордс).

Да разбијемо значење апсолутног увоза горе, субворд_цоунт је директоријум у директоријуму вашег пројекта који садржи вордцоунтер.пи датотека. Та датотека затим садржи ЦоунтВордс функцију.

Где функционише поновна употреба кода?

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

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

Емаил
Водич за почетнике за Питхон објектно оријентисано програмирање

Да бисте у потпуности искористили предности Питхона, желећете да научите како Питхон ради са објектно оријентисаним програмирањем (ООП).

Повезане теме
  • Програмирање
  • Програмирање
  • Питхон
  • Објектно оријентисано програмирање
О аутору
Идову Омисола (Објављено 45 чланака)

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

Још од Идову Омисола

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, прегледе, бесплатне е-књиге и ексклузивне понуде!

Још један корак…!

Молимо потврдите своју адресу е-поште у е-поруци коју смо вам управо послали.

.