1. ПрограммингПитхонКако користити Ламбда функције у Питхону

Аутор: Алан Сховиц, Јохн Сховиц

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

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

Минимална синтакса за дефинисање ламбда израза (без имена) са Питхон-ом је:

Ламбда аргументи: израз

Када га користите:

  • Замијените аргументе подацима који су пренесени у израз. Замијените израз изразом (формула) који дефинише шта желите да се врати ламбда.

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

Адамс, Ма, диМеола, Зандуски

Претпоставимо да напишете следећи код да бисте имена поставили на листу, сортирали је, а затим је одштампали, као што је овај:

наме = ['Адамс', 'Ма', 'диМеола', 'Зандуски']
намес.сорт ()
испис (имена)

Излаз из овога је:

['Адамс', 'Ма', 'Зандуски', 'диМеола']

Након што диМеола дође после Зандуског изгледа почетницима је погрешно. Али, рачунари не виде ствари увек као ми. (Заправо, они не "виде" ништа јер немају очи или мозак ... али то је поред тога.) Разлог због којег диМеола долази после Зандуског је тај што се врста заснива на АСЦИИ, што је систем у којем сваки знак је представљен бројем.

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

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

.сорт (кључ = претворба)

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

намес.сорт (кеи = лен)

Нажалост за нас, дужина низа не помаже у писању абецеде. Када то покренете, испада да је наредба:

['Ма', 'Адамс', 'диМеола', 'Зандуски']

Сортирање иде од најкраћег низа (оног са најмање карактера) до најдужег низа. Тренутно није од помоћи.

Не можете да напишете тастер = доњи или тастер = горњи да бисте сортирали на малим или великим словима јер доња и горња нису уграђене функције (што можете брзо да проверите помоћу уграђеног гооглинг питхон 3.7 функције).

Уместо уграђене функције, можете користити прилагођену функцију коју сами дефинишете користећи деф. На примјер, можете креирати функцију названу ловер () која прихвата низ и враћа тај низ са свим његовим словима претвореним у мала слова. Ево функције:

деф ниже (анистринг):
"" "Претвара низ у мала слова" ""
ретурн анистринг.ловер ()

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

Не можете да користите тастер кеи = ниже у зарезима сорт (), јер ниже () није уграђена функција. То је метода ... није иста. Врста досадних са свим тим буззворд-има.

Претпоставимо да ову функцију напишете у ћелију Јупитер или .пи датотеку. Тада функцију назовете нечим попут принт (малим словима ('Зандуски')). Оно што добијете као излаз је тај низ претворен у мала слова, као што видите испод.

прилагођена функција ниже () у Питхон-у

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

Деф малим словима (анистринг):
"" "Претвара низ у мала слова" ""
ретурн анистринг.ловер ()
 
наме = ['Адамс', 'Ма', 'диМеола', 'Зандуски']
намес.сорт (кеи = мала слова)

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

'Адамс', 'диМеола', 'Ма', 'Зандуски'

Ако сте и даље будни и свесни након што сте прочитали све ово, можда размишљате: „У реду, решили сте проблем са сортирањем. Али мислио сам да овде говоримо о ламбда функцијама. Где је функција ламбда? “Још нема функције ламбде.

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

Када ваша функција може учинити нешто једноставним изразом једнореда попут тога, можете прескочити деф и име функције и једноставно користити ову синтаксу:

ламбда параметри: израз

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

ламбда анистринг: анистринг.ловер ()

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

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

Питхон ламбда израз

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

наме = ['Адамс', 'Ма', 'диМеола', 'Зандуски']
намес.сорт (кеи = ламбда с: с.ловер ())
испис (имена)

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

На пример, овде је ламбда функција названа валута која узима било који број и враћа низ у облику валуте (то јест, са знаком водећег долара, зарезима између хиљада и две цифре за денар):

валута = ламбда н: ф "$ {н:,. 2ф}"

Ево једног именованог процента који множи било који број који му пошаљете са 100 и показује га са знаком два процента на крају:

проценат = ламбда н: ф "{н: .2%}"

Следећа слика приказује примере обе функције дефинисане на врху Јупитерове ћелије. Затим неколико изјава за испис позива функције по имену и преносе им неке узорке података. Свака изјава за испис () приказује број у жељеном формату.

Бројеви за форматирање Питхона

Разлог због којег можете да их дефинишете као једно-линијске ламбде је тај што можете сав посао обавити у једној линији, ф "$ {н:,. 2ф}" за прву и ф "{н: .2%}" за друга. Али то само зато што то можете, не значи да морате. Можете користити и редовне функције, као што следи:

# Прикажи број у облику валуте.
деф валута (н):
ретурн ф "$ {н:,. 2ф}"
 
деф проценти (н):
# Прикажи број у формату.
ретурн ф "{н: .2%}"

Са овом дужом синтаксом, можете пренијети и више информација. На пример, можете да поставите подразумевани формат у одређеној ширини (рецимо 15 знакова), тако да су сви бројеви изашли десно поравнани на исту ширину. Слика приказује ову варијацију на две функције.

Питхон форматирање има фиксну ширину

На слици изнад, други параметар је опционалан и подразумева се на 15 ако је изостављен. Дакле, ако га назовете овако:

штампа (валута (9999))

… Добијате 9 999,00 УСД подметача са довољно размака на левој страни да бисте га учинили широким 15 знакова. Ако га назовете овако:

штампа (валута (9999,20)

... још увек добијате 9 999,00 УСД, али подстављено са довољно размака на левој страни да бисте били 20 карактера ширине.

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

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

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

  1. ПрограммингПитхонКако дефинирати и користити Питхон листе

Аутор: Алан Сховиц, Јохн Сховиц

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

сцоре = = [88, 92, 78, 90, 98, 84]

Ако листа садржи жице, онда, као и увек, ти низови требају бити затворени једним или двоструким наводницима, као у овом примеру:

Да бисте приказали садржај листе на екрану, можете је исписати баш као што бисте исписали било коју редовну променљиву. На пример, извршавање принта (студената) у вашем коду након дефинисања те листе то приказује на екрану.

['Марк', 'Амбер', 'Тодд', 'Анита', 'Санди']

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

Референцирање ставки на Питхон листи по положају

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

листнаме [к]

Замените име листе именом листе којој приступате и замените к са бројем позиције ставке коју желите. Запамтите, прва ставка је увек нула, а не једна. На пример, у првом реду испод, дефинишем листу под називом студенти и затим исписујем број нуле са те листе. Резултат, приликом извршења кода, је да се приказује име Марк.
студентс = ["Марк", "Амбер", "Тодд", "Анита", "Санди"]
штампа (студенти [0])
Означи

<технички производ>

Када читају ставке листе приступа, професионалци употребљавају реч под бројем. На пример, студенти [0] ће се говорити као студенти испод нуле.

Следећи пример приказује листу са резултатима. Функција принт () исписује број позиције последњег резултата на листи, који је 4 (јер је први увек нула).

бодови = [88, 92, 78, 90, 84]
штампа (партитуре [4])
84

Ако покушате да приступите ставци листе која не постоји, добићете грешку „индекса ван домета“. Индексни дио је референца на број унутар углатих заграда. На пример, слика испод приказује мали експеримент у Јупитеровој свесци где је створен списак резултата и покушај штампања резултата [5].

Није успео и створио је грешку јер нема резултата [5]. Постоје само резултати [0], бодови [1], бодови [2], бодови [3], и оцене [4], јер бројање увек почиње са нулом од првог на листи.

Распон индекса Питхон

Прегледавање Питхон листе

Да бисте приступили свакој ставци на листи, само користите петљу са овом синтаксом:

за к на листи:

Замените <ем> к променљивим именом по вашем избору. Замените листу именом листе. Једноставан начин читања кода је увек користити множину за име листе (као што су студенти, резултати). Тада можете користити јединствено име (ученик, резултат) за променљиво име. Уз овај приступ не морате користити и бројеве претплата (бројеви у квадратним заградама). На пример, следећи код штампа сваки резултат на листи резултата:

за резултат у резултатима:
испис (резултат)

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

Прегледавање Питхон листе

Погледајте да ли Питхон листа садржи ставку

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

На пример, код на слици испод ствара листу имена. Затим две променљиве чувају резултате претраживања по именима Анита и Боб. Штампање садржаја сваке променљиве приказује Тачно за ону на којој је име (Анита) на листи. Тест да ли се Боб налази на листи показао се лажним.

Видети да ли се ставка налази на Питхон листи

Добијање дужине Питхон листе

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

студентс = ["Марк", "Амбер", "Тодд", "Анита", "Санди"]
штампа (лен (студенти))

Покретање тог кода даје овај излаз:

5

На списку је заиста пет ставки, мада је последња увек једна мања од броја, јер Питхон почиње рачунати на нули. Дакле, последња Санди се заправо односи на студенте [4], а не на студенте [5].

Додавање ставке на крај Питхон листе

Када желите да ваш Питхон код дода нову ставку на крај листе, користите .аппенд () метод са вредностом коју желите да додате у заграде. Унутар наводника можете користити или име променљиве или буквалну вредност.

На пример, на следећој слици редак који чита студентс.аппенд („Гообер“) додаје име Гообер у листу. Линија која чита студентс.аппенд (нев_студент) додаје било које име похрањено у променљивој имену нев_студент на листу. Метода .аппенд () се увек додаје на крај листе. Када исписујете листу, на крају видите та два нова имена.

Листа додатака Питхон-а

Можете да користите тест да бисте видели да ли је нека ставка на листи, а затим је додате само када је ставка већ нема. На пример, код испод неће додати име Амбер на листу јер је то име већ на листи:

студент_наме = "Аманда"

#Додајте име студента, али само ако већ није на листи.
ако студент_наме у студентима:
    штампај (име_наченика + "већ на листи")
друго:
    студентс.аппенд (име студента)
    испис (име_назнака + „додано на листу“)

Уметање ставке у Питхон листу

Иако метода додавања () омогућава додавање ставке на крај листе, метода инсерт () омогућава вам додавање ставке на листу на било којој позицији. Синтакса за инсерт () је

листнаме.инсерт (позиција, ставка)

Замените име листе са именом листе, поставите са позицијом у коју желите да уметнете ставку (на пример, 0 да бисте је поставили првом ставком, 1 да бисте је учинили другом ставком и тако даље). Замијените ставку вриједношћу или именом варијабле која садржи вриједност коју желите ставити на листу.

На пример, следећа шифра чини Лупе првом ставком на листи:

# Креирајте листу стрингова (имена).
студентс = ["Марк", "Амбер", "Тодд", "Анита", "Санди"]

студент_наме = "Лупе"
# Додајте име ученика на наслов листе.
студентс.инсерт (0, име студента)

# Покажи ми нову листу.
штампа (студенти)

Ако покренете код, принт (студенти) ће приказати листу након што је ново име убачено, као што следи:

['Лупе', 'Марк', 'Амбер', 'Тодд', 'Анита', 'Санди']

Промена ставке на Питхон листи

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

листнаме [индекс] = нова вредност

Замените име листе са именом листе; замените индекс претплатом (број индекса) ставке коју желите да промените; и замените ново вредност са оним што желите да ставите у листу. На пример, погледајте овај код:

# Креирајте листу стрингова (имена).
студентс = ["Марк", "Амбер", "Тодд", "Анита", "Санди"]
студентс [3] = "Хобарт"
штампа (студенти)

Када покренете овај код, излаз је следећи, јер је Анино име промењено у Хобарт.

['Марк', 'Амбер', 'Тодд', 'Хобарт', 'Санди']

Комбиновање Питхон листа

Ако имате две листе које желите да комбинујете у једну листу, користите функцију екте () са синтаксом:

оригинал_лист.ектенд (додатни_итемс_лист)

У коду замените оригинал_лист именом листе на коју ћете додавати нове ставке листе. Замените Аддитионал_итемс_лист именом листе која садржи ставке које желите да додате на прву листу. Ево једноставног примера користећи листе именоване лист1 и лист2. Након извршења лист1.ектенд (лист2), прва листа садржи ставке са обе листе, као што можете видети на испису исписа () изјаве на крају.

# Направите две листе имена.
лист1 = ["Зара", "Лупе", "Хонг", "Алберто", "Јаке"]
лист2 = ["Хуеи", "Девеи", "Лоуие", "Надер", "Бубба"]

# Додајте листи2 имена у листу1.
лист1.ектенд (лист2)

# Штампај листу 1.
испис (листа1)

['Зара', 'Лупе', 'Хонг', 'Алберто', 'Јаке', 'Хуеи', 'Девеи', 'Лоуие', 'Надер', 'Бубба']

Лако Парцхееси, зар не?

Уклањање ставки са Питхон листе

Питхон нуди методу уклањања () тако да можете уклонити било коју вредност са листе. Ако се ставка налази на листи више пута, уклања се само прва појава. На пример, следећа шифра приказује списак слова са словом Ц поновљеним неколико пута. Тада код користи слова.ремове ("Ц") да би слово Ц уклонили са листе:

# Уклоните „Ц“ са листе.
слова.ремове („Ц“)

# Покажи ми нову листу.
штампа (слова)

Када стварно извршите овај код и затим одштампате листу, видећете да је уклоњено само прво слово Ц:

['А', 'Б', 'Д', 'Ц', 'Е', 'Ц']

Ако морате да уклоните све ставке, можете да користите петљу док понављате .ремове све док ставка и даље остане на списку. На пример, овај код понавља .ремове све док је „Ц“ још увек на листи.

#Израдите листу низова.
слова = ["А", "Б", "Ц", "Д", "Ц", "Е", "Ц"]

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

На пример, следећи код ствара листу, један ред уклања прву ставку (0), а други уклања последњу ставку (поп () без зазора у заградама). Штампање листе показује да су ове две ставке уклоњене:

#Израдите листу низова.
слова = ["А", "Б", "Ц", "Д", "Е", "Ф", "Г"]
 
# Уклоните прву ставку.
слова.поп (0)
#Уклоните последњу ставку.
леттерс.поп ()
 
# Покажи ми нову листу.
штампа (слова)

Покретање кода показује да је искакање првих и последњих ставки заиста успело:

['Б', 'Ц', 'Д', 'Е', 'Ф']

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

уклоните ставке са Питхон листе

Питхон такође нуди наредбу дел (скраћено за брисање) која брише било коју ставку са листе на основу њеног броја индекса (позиције). Али опет, морате запамтити да је прва ставка једнака нули. Рецимо да покренете следећи код да бисте избрисали ставку број 2 са листе:

# Направите листу низова.
слова = ["А", "Б", "Ц", "Д", "Е", "Ф", "Г"]
 
# Уклони ставку 2.
дел слова [2]
 
штампа (слова)

Покретање тог кода приказује листу поново на следећи начин. Слово Ц је избрисано, што је исправна ставка за брисање, јер су слова нумерисана 0, 1, 2, 3 и тако даље.

['А', 'Б', 'Д', 'Е', 'Ф', 'Г']

Такође можете да користите дел за брисање целе листе. Само не користите квадратне заграде и индексни број. На пример, код који видите испод креира листу, а затим је брише. Покушај штампања листе након брисања узрокује грешку, јер листа више не постоји када се изврши изјава принт ().

избриши Питхон листу

Брисање Питхон листе

Ако желите да обришете садржај листе, али не и сам списак, користите .цлеар (). Листа још увек постоји; међутим, не садржи ниједну ставку. Другим речима, то је празна листа. Следећи код показује како бисте то могли тестирати. Покретање кода приказује [] на крају, што вам омогућава да знате да је листа празна:

# Направите листу низова.
слова = ["А", "Б", "Ц", "Д", "Е", "Ф", "Г"]
 
# Обришите листу свих уноса.
леттерс.цлеар ()
 
# Покажи ми нову листу.
штампа (слова)

[]

Бројање колико се пута ставка појави на Питхон листи

Можете употребити Питхон цоунт () метод да бројите колико пута се ставка појављује на листи. Као и код других метода листе, синтакса је једноставна:

листнаме.цоунт (к)

Замените име листе са именом своје листе и к са вредностом коју тражите (или именом променљиве која садржи ту вредност).

Код на слици испод броји колико се слова Б појављују на листи, користећи буквално Б унутар заграда у .цоунт (). Тај исти код такође броји број разреда Ц, али та вредност је сачувана у променљивој само да би се приказала разлика у синтакси. Оба тачка су радила, као што можете видети на излазу програма на дну. Једна је додата за бројање вредности Ф, не употребљавајући никакве променљиве. Ф-ови се рачунају тачно у коду који приказује поруку. Нема Ф оцена, тако да ово враћа нулу, као што видите у излазу.

броји ставке Питхон листе

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

Проналажење индекса ставке Питхон листе

Питхон нуди .индек () методу која враћа број који означава позицију, на основу броја индекса, ставке на листи. Синтакса је:

листнаме.индек (к)

Као и увек, име листе замените именом листе коју желите да претражите. Замените к шта год да тражите (као дословно или као променљиво име, као и увек). Наравно, не постоји гаранција да је ставка на списку, па чак и ако постоји, не постоји гаранција да ће се та ставка наћи на листи само једном. Ако ставка није на листи, долази до грешке. Ако се ставка налази на листи више пута, враћа се индекс првог одговарајућег предмета.

Следећа слика показује пример где се програм руши у линији ф_индек = граде.индек (лоок_фор) јер на листи нема Ф.

Индекс ставки на списку Питхон-а

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

# Направите листу низова.
граде = = "Ц", "Б", "А", "Д", "Ц", "Б", "Ц"]
# Одлучите шта треба тражити
лоок_фор = "Ф"
# Погледајте да ли је предмет на листи.
ако тражите_за оцене:
    # Ако је на листи, узмите и покажите индекс.
    принт (стр (лоок_фор) + "је у индексу" + стр (граде.индек (лоок_фор)))
друго:
    # Ако није на листи, немојте ни покушавати да унесете број индекса.
    принт (стр (лоок_фор) + „није на листи.“)

Абецеда и сортирање Питхон листа

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

листнаме.сорт ()

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

сортирај Питхон листу

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

Датуми су мало замршенији јер их не можете једноставно унети као жице, попут „31.12.2020“. Точно морају да буду врста података о датуму. То значи да се користи датумски модул и метода датум () за дефинисање сваког датума. Можете додати датуме у листу као и било којој другој листи. На пример, у следећем реду код ствара листу од четири датума и код је сасвим у реду.

датуми = [дт.дат (2020,12,31), дт.дат (2019,1,31), дт.дат (2018,2,28), дт.дат (2020,1,1)]

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

дателист = []
прикажите датуме у Питхон-у

Затим је један по један датум додан листи користећи синтаксу дт.дате (година, месец, дан).

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

[датетиме.дате (2018, 2, 28), датетиме.дате (2019, 1, 31), датетиме.дате (2020, 1, 1), датетиме.дате (2020, 12, 31)]

Листа није најлакша за читање. Дакле, уместо да исписујете читаву листу са једном изјавом принт (), можете прелистати сваки датум на листи и штампати сваки форматиран ф-стрингом% м /% д /% И. Ово приказује сваки датум у сопственом ретку у мм / дд / гггг

Ако желите да сортирате ставке обрнутим редоследом, ставите реверсе = труе унутар заграде за сорт () (и не заборавите да направите велика слова првог слова). На слици испод приказани су примери сортирања све три листе према силазном (обрнутом) редоследу користећи реверсе = Труе.

информације сортирајте на Питхон листи обрнуто

Обртање Питхон листе

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

Следећи код приказује пример у коме преокрећете редослед имена на листи и затим га одштампате. Излаз приказује ставке листе обрнуте од првобитног поретка:

# Направите листу низова.
наме = ["Зара", "Лупе", "Хонг", "Алберто", "Јаке"]
# Преокрените листу
намес.реверсе ()
# Одштампај листу
испис (имена)
 
['Јаке', 'Алберто', 'Хонг', 'Лупе', 'Зара']

Копирање Питхон листе

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

# Направите листу низова.
наме = ["Зара", "Лупе", "Хонг", "Алберто", "Јаке"]
 
# Направите копију листе
бацквард_намес = намес.цопи ()
# Преокрените копију
бацквард_намес.реверсе ()
 
# Одштампај листу
испис (имена)
штампање (назадна имена)
 
['Зара', 'Лупе', 'Хонг', 'Алберто', 'Јаке']
['Јаке', 'Алберто', 'Хонг', 'Лупе', 'Зара']

За будуће референце следећа табела сажима методе о којима сте сазнали.