Реклама

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

Предуслови

Не морате много да знате унапред да бисте научили ове концепте. Основно знање о програмирању парадигми и Питхон-а биће од помоћи, али није потребно. Прочитајте наше основни Питхон примери 10 основних примјера Питхон-а који ће вам помоћи да брзо научитеОвај чланак основних примера питхона намењен је онима који већ имају одређено искуство у програмирању и једноставно желе да пређу на Питхон што је брже могуће. Опширније ако не знате одакле почети. Ако мислите да је Питхон бескористан језик, погледајте наш разлоге због којих то није 5 разлога зашто Питхон програмирање није бескорисноПитхон - или га волите или мрзите. Можете се чак љуљати с једног краја на други попут клатна. Без обзира на то, Питхон је језик о којем је тешко бити амбивалентан. Опширније .

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

туториалспоинт.цом пружа одличан интернетски тумач Питхон-а - чак и не морате инсталирати Питхон ако не желите (ако то желите, погледајте наш водич за виртуелна окружења Сазнајте како користити виртуално окружење Питхон-аБез обзира да ли сте искусни Питхон програмер или тек започињете, учење како да подесите виртуелно окружење од суштинског је значаја за сваки Питхон пројекат. Опширније ).

Структуре података

Шта је структура података? На свом основном нивоу, структура података је начин ефикасног чувања података. Лако се збунити јер структуре података нису типови података. Типови података говоре преводиоцу (или у Питхон-овом случају преводиоцу) како се подаци користе. Структуре података одређују операције које се могу изводити и често имплементирају посебна правила и прописе.

Можда сте чули за неке линеарни типови података (елементи су секвенцијални):

  • Арраи
  • Матрица
  • Табела претраживања

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

  • Повезана листа
  • Двоструко повезана листа
  • Арраи лист или динамички низ

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

Арраи

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

Питхон донекле комплицира ствари. То вам олакшава ствари, али се не држи увек строгих дефиниција структуре података. Већина објеката на Питхону обично је листа, тако да је креирање низа заправо више посла. Ево неких почетних кодова:

фром арраи импорт матрице. бројеви = низ ('и', [2, 4, 6, 8]) бројеви за штампу [0]

Прва линија увози низ модул - који је потребан за рад са низовима. Други ред креира нови низ зван бројеви и иницијализира га са вредностима 2, 4, 6 и 8. Сваком елементу је додељен ан цијели број вредност која се зове а кључ или индекс. Кључеви почињу од почетка нула, тако бројеви [0] приступиће првом елементу (2):

Питхон Арраис

Можда се питате шта 'Ја' користи се за Ово је типецоде који говори Питхон-у да ће низ похранити целе бројеве. Оваква ствар обично не би била потребна у Питхону (сматрало би се „непитоничном“). Разлог за то је једноставан. Низови у Питхон-у су врло танки омотачи на доњим Ц низовима вашег оперативног система. То значи да су брзи и стабилни, али не морају се увек придржавати Питхон синтаксе.

Не можете спремати мешовите типове у ове низове. Реците да желите да сачувате низ „макеусеоф.цом“:

бројеви = низ ('и', [2, 4, 6, "макеусеоф.цом"])

То неће бити дозвољено и изузеће:

Питхон Арраис

Ево како можете да одштампате све елементе:

бројеви за штампање
Питхон Арраис

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

Сваки програмски језик ће имплементирати одређену петљу, која је савршена за понављање (петље) над елементима листе. Најчешће су петље док и за. Питхон ствари чини још лакшим пружањем а за у петља:

за број у бројевима: број за штампање

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

за и у распону (лен (бројеви)): бројеви за штампање [и]

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

Листе

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

Листа је посебна врста матрице. Највећа разлика је у томе што листе могу да садрже помешан типови (запамтите, низови морају да садрже елементе исте врсте). Листе је на Питхону веома једноставно:

аутомобили = ['Форд', 'Аустин', 'Ланциа']

Примјетите како вам није потребно да увозите низ модул?

Ова синтакса декларира листу која се зове аутомобили. Унутар углатих заграда сваки елемент листе је декларисан. Сваки елемент је одвојен зарезом, а како је сваки елемент низ, декларирате их унутар наводника. Питхон зна да је то предмет, па принт Извод ће приказати садржај листе:

штампани аутомобили
Питхон Арраис

Баш као и са низом, можете понављати елементе листе користећи петље:

за аутомобиле у аутомобилима: принт цар
Питхон Арраис

Прави страначки трик листа је њихов мешовити тип. Само напред и додајте неке додатне податке:

аутомобили = ['Форд', 'Аустин', 'Ланциа', 1, 0.56]

Ово није проблем за Питхон - није ни створио изузетак:

Питхон Арраис

Лако је додати нове елементе на листу (нешто није могуће са низовима):

аутомобили = ['Форд', 'Аустин'] штампани аутомобили. царс.аппенд ('Ланциа') штампани аутомобили
Питхон Арраис

Такође можете да спојите две листе у једну:

аутомобили = ['Форд', 'Аустин'] штампани аутомобили. отхер_царс = ['Лотус', 'Ланциа'] царс.ектенд (отхер_царс) штампани аутомобили
Питхон Арраис

Једноставно је уклонити елементе помоћу уклони синтакса:

аутомобили = ['Форд', 'Аустин', 'Лотус', 'Ланциа'] штампани аутомобили. царс.ремове ('Форд') штампани аутомобили
Питхон Арраис

То се тиче основа листа и низова у Питхон-у. Зашто не бисте размотрили пројекат кодирања, као што је читање и писање у Гоогле табеле Како читати и писати на Гоогле листове са Питхон-омПитхон се може чинити чудним и необичним, међутим лако га је научити и користити. У овом чланку ћу вам показати како читати и писати на Гоогле листове помоћу Питхон-а. Опширније , читање јсон података Како добити Питхон и ЈаваСцрипт за комуникацију користећи ЈСОНДанас ћу вам показати како користити ЈСОН за слање података са ЈаваСцрипт-а на Питхон. Открићу како да подесите веб сервер, заједно са свим кодом који вам је потребан. Опширније . Можда бисте могли да поставите своје нове вештине да бисте их користили прилагођени тастери за пречице Направите своје властите типке пречаца с ардуиномСкромни Ардуино може учинити много ствари, али јесте ли знали да може да опонаша УСБ тастатуру? Можете комбиновати дугачке пречице на тастатури у један прилагођени тастер за пречице, помоћу овог једноставног круга. Опширније . Иако су другачији програмски језик, ови принципи низа се и даље примењују.

Јесте ли научили нешто ново? Да ли бисте желели да видите неки сложенији садржај? Јавите нам своје мисли у коментарима испод!

Јое је дипломирани професор информатике са Универзитета у Линцолну у Великој Британији. Он је професионални програмер софтвера, а када не лети дроновима или пише музику, често га могу наћи како снимају фотографије или снимају видео записе.