Python saraksts: Izpratne, Apend, Kārtot, Garums, Reverss PIEMĒRI

Satura rādītājs:

Anonim

Kas ir Python saraksts?

Saraksts ir tieši tas, kā tas izklausās, konteiners, kurā ir dažādi Python objekti, kas varētu būt veseli skaitļi, vārdi, vērtības utt. Tas ir masīva ekvivalents citās programmēšanas valodās. To attēlo kvadrātiekavas (un tas ir viens no atribūtiem, kas to atšķir no rindkopām, kuras atdala iekavas). Tas ir arī mainīgs, tas ir, to var modificēt vai atjaunināt; atšķirībā no groziem, kas nav maināmi.

Šajā pitona apmācībā jūs uzzināsiet:

  • Kas ir Python saraksts?
  • Python sarakstu piemēri:
  • Piekļuve vērtībām sarakstos
  • Saraksta sagriešana
  • Sarakstu atjaunināšana
  • Saraksta elementu dzēšana
  • Pievieno saraksta elementus
  • Uzskaitiet iebūvētās funkcijas (metodes)
  • Pārejot pa sarakstiem
  • Uzskaitiet izpratni

Python sarakstu piemēri:

Python saraksti var būt viendabīgi, kas nozīmē, ka tajos var būt tāda paša veida objekti; vai neviendabīgi, ieskaitot dažāda veida objektus.

Homogēnu sarakstu piemēri:

list of integers = [1, 2, 3, 8, 33]list of animals = ['dog', 'cat', 'goat']list of names = ['John', 'Travis', 'Sheila']list of floating numbers = [2.2, 4.5, 9.8, 10.4]

Heterogēnu sarakstu piemēri:

[2, 'cat', 34.33, 'Travis'][2.22, 33, 'pen']

Piekļuve vērtībām sarakstos

Lai piekļūtu vērtībām sarakstos, var izmantot sarakstā esošo objektu indeksu. Indekss Python sarakstos norāda uz elementa pozīciju sakārtotā sarakstā. Piemēram:

list = [3, 22, 30, 5.3, 20]
  • Pirmās vērtības sarakstā 3 - indekss ir 0
  • Otrās vērtības, 22, indekss ir 1
  • Trešās vērtības, 30, indekss ir 2

un tā tālāk. Lai piekļūtu katrai no saraksta vērtībām, izmantojiet:

list[0] to access 3list[1] to access 22list[2] to access 30list[3] to access 5.3list[4] to access 20

Pēdējam saraksta dalībniekam var piekļūt arī, izmantojot indeksu -1. Piemēram,

list[-1] = 20

Saraksta sagriešana

Saraksta sagriešana ir saraksta apakškopas sadalīšanas metode, un tam tiek izmantoti arī saraksta objektu indeksi. Piemēram, izmantojot to pašu saraksta piemēru iepriekš;

list[:] = [3, 22, 30, 5.3, 20] (all the members of the list];list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3);list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4)list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).

Python saraksti ir ekskluzīvi augšpusē, un tas nozīmē, ka pēdējais indekss saraksta sagriešanas laikā parasti tiek ignorēts. Tāpēc

list[2:-1] = [30, 5.3] 
, nevis [30, 5.3, 20]. Tas pats attiecas uz visiem citiem iepriekš minētajiem saraksta sagriešanas piemēriem.

Sarakstu atjaunināšana

Pieņemsim, ka jums ir saraksts = [fizika, ķīmija, matemātika], un jūs vēlaties mainīt sarakstu uz [bioloģija, ķīmija, matemātika], faktiski nomainot locekli indeksā 0. To var viegli izdarīt, piešķirot šo indeksu jauns biedrs, kuru vēlaties.

Tas ir,

list = [physics, chemistry, mathematics]list[0] = biologyprint(list)

Rezultāts: [bioloģija, ķīmija, matemātika]

Tas aizstāj locekli indeksā 0 (fizika) ar jauno vajadzīgo vērtību (ķīmija). To var izdarīt jebkuram saraksta dalībniekam vai apakškopai, kuru vēlaties mainīt.

Lai sniegtu vēl vienu piemēru; pieņemsim, ka jums ir saraksts, ko sauc par veseliem skaitļiem un kurā ir skaitļi [2, 5, 9, 20, 27]. Lai aizstātu 5 šajā sarakstā ar 10, varat to izdarīt ar:

 integers = [2, 5, 9, 20, 27]integers[1] = 10print(integers)>>> [2, 10, 9, 20, 27]

Lai aizstātu veselu skaitļu saraksta pēdējo locekli, kas ir 27, ar bezmaksas numuru, piemēram, 30,5, jūs izmantojat:

 integers = [2, 5, 9, 20, 27]integers[-1] = 30.5print(integers)>>> [2, 5, 9, 20, 30.5]

Saraksta elementu dzēšana

Saraksta elementu dzēšanai ir 3 Python metodes: list.remove (), list.pop () un del operators. Metode Noņemt ņem konkrēto elementu kā argumentu, bet pop un del noņemamā elementa indeksu uzskata par argumentu. Piemēram:

saraksts = [3, 5, 7, 8, 9, 20]

Lai izdzēstu 3 (1. elements) no saraksta, varat izmantot:

  • saraksts.noņemt (3) vai
  • list.pop [0] vai
  • del saraksts [0]

Lai no saraksta izdzēstu 8, 3. rādītāja vienumu, varat izmantot:

  • saraksts.noņemt (8) vai
  • list.pop [3]

Pievieno saraksta elementus

Lai pievienotu elementus sarakstam, tiek izmantota pievienošanas metode, un tas elementu pievieno saraksta beigām.

Piemēram:

list_1 = [3, 5, 7, 8, 9, 20]list_1.append(3.33)print(list_1)>>> list_1 = [3, 5, 7, 8, 9, 20, 3.33]list_1.append("cats")print(list_1)>>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]

Uzskaitiet iebūvētās funkcijas (metodes)

Šis ir iebūvēto funkciju un metožu saraksts ar to aprakstiem:

  • len (saraksts): tas dod saraksta garumu kā izvadi. Piemēram:
numbers = [2, 5, 7, 9]print(len(numbers))>>> 4
  • max (saraksts): atgriež vienumu sarakstā ar maksimālo vērtību. Piemēram:
numbers = [2, 5, 7, 9]print(max(numbers))>>> 9
  • min (saraksts): atgriež vienumu sarakstā ar minimālo vērtību. Piemēram:
numbers = [2, 5, 7, 9]print(min(numbers))>>> 2
  • saraksts (kopa): pārveido kopu objektu sarakstu. Piemēram;
animals = (cat, dog, fish, cow)print(list(animals))>>> [cat, dog, fish, cow]
  • list.append (elements): pievieno elementu sarakstam. Piemēram;
numbers = [2, 5, 7, 9]numbers.append(15)print(numbers)>>> [2, 5, 7, 9, 15]
  • list.pop (index): noņem no saraksta norādītajā rādītājā esošo elementu. Piemēram;
numbers = [2, 5, 7, 9, 15]numbers.pop(2)print(numbers)>>> [2, 5, 9, 15]
  • list.remove (element): izdzēš elementu no saraksta. Piemēram;
values = [2, 5, 7, 9]values.remove(2)print(values)>>> [5, 7, 9]
  • list.reverse (): atceļ saraksta objektus. Piemēram;
values = [2, 5, 7, 10]values.reverse()print(values)>>> [10, 7, 5, 2]
  • list.index (elements): lai iegūtu elementa indeksa vērtību sarakstā. Piemēram;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']fish_index = animals.index('fish')print(fish_index)>>> 2
  • summa (saraksts): lai iegūtu visu saraksta vērtību summu, ja vērtības ir visi skaitļi (veseli skaitļi vai decimāldaļas). Piemēram;
values = [2, 5, 10]sum_of_values = sum(values)print(sum_of_values)>>> 17

Ja sarakstā ir kāds elements, kas nav skaitlis, piemēram, virkne, summa metode nedarbosies. Jūs saņemsit kļūdu, sakot: " TypeError : neatbalstīts (-i) operanda tips (-i) +: 'int' un 'str'"

  • list.sort (): lai sakārtotu veselu skaitļu, peldošā komata numuru vai virkņu sarakstu augošā vai dilstošā secībā. Piemēram:
values = [1, 7, 9, 3, 5]# To sort the values in ascending order:values.sort()print(values)>>> [1, 3, 5, 7, 9]

Vēl viens piemērs:

values = [2, 10, 7, 14, 50]# To sort the values in descending order:values.sort(reverse = True)print(values)>>> [50, 14, 10, 7, 2]

Stīgu sarakstu var sakārtot alfabētiskā secībā vai pēc virkņu garuma. Piemēram;

# to sort the list by length of the elementsstrings = ['cat', 'mammal', 'goat', 'is']sort_by_alphabet = strings.sort()sort_by_length = strings.sort(key = len)print(sort_by_alphabet)print(sort_by_length)>>> ['cat', 'goat', 'is', 'mammal']['is', 'cat', 'goat', 'mammal']

Mēs varam sakārtot to pašu sarakstu alfabētiskā secībā, izmantojot virknes.

Pārejot pa sarakstiem

Sarakstu pārlūkošanu var veikt tāpat kā jebkuru citu Python cilpu funkciju. Tādā veidā metodi var vienlaikus veikt vairākos saraksta elementos. Piemēram:

saraksts = [10, 20, 30, 40, 50, 60, 70].

Lai aplūkotu visus šī saraksta elementus un teiksim, katram elementam pievienojiet 10:

for elem in list:elem = elem + 5print(elem)>>>>15253545556575

Pārlūkot pirmos trīs saraksta elementus un izdzēsiet tos visus;

for elem in list[:3]:list.remove(elem)>>>list = [40, 50, 60, 70]

Lai cilpu caur 3 rd (2 indeksa) uz pēdējā elementa sarakstā, un pievienot tos uz jaunu sarakstu sauc new_list:

new_list = []for elem in list[2:]:new_list.append(elem)print(“New List: {}”.format(new_list))Output:New List: [30, 40, 50, 60, 70]

Tādā veidā saraksta dalībniekiem var piemērot jebkuru metodi vai metodi vai funkciju, lai veiktu noteiktu darbību. Varat vai nu cilpot visus saraksta dalībniekus, vai arī veikt saraksta apakškopu, izmantojot saraksta sagriešanu.

Uzskaitiet izpratni

Sarakstu izpratne ir Python funkcijas, kuras tiek izmantotas jaunu secību (piemēram, sarakstu, vārdnīcu utt.) Izveidošanai, izmantojot jau izveidotas sekvences. Tie palīdz samazināt garākas cilpas un atvieglo koda lasīšanu un uzturēšanu.

Piemēram; Pieņemsim, ka vēlaties izveidot sarakstu, kurā ir visu skaitļu kvadrāti no 1 līdz 9:

list_of squares = []for int in range(1, 10):square = int ** 2list_of_squares.append(square)print(list_of_squares)List_of_squares using for loop:[1, 4, 9, 16, 25, 36, 49, 64, 81]

Lai darītu to pašu ar saraksta izpratni:

list_of_squares_2 = [int**2 for int in range(1, 10)]print('List of squares using list comprehension: {}'.format(list_of_squares_2))Output using list comprehension:[1, 4, 9, 16, 25, 36, 49, 64, 81]

Kā redzams iepriekš, koda rakstīšana, izmantojot saraksta izpratni, ir daudz īsāka nekā tradicionālā izmantošana cilpām, kā arī ir ātrāka. Šis ir tikai viens piemērs tam, kā izmantot sarunu izpratni cilpu vietā, taču to var atkārtot un izmantot daudzās vietās, kur var izmantot arī cilpas. Dažreiz iet ar for loop ir labāka iespēja, it īpaši, ja kods ir sarežģīts, taču daudzos gadījumos saraksta izpratne padarīs jūsu kodēšanu vieglāku un ātrāku.

Zemāk ir tabula, kurā ir dažas saraksta funkcijas un metodes, kā arī to apraksti.

Iebūvētās funkcijas

FUNKCIJA APRAKSTS
Raunds() Noapaļo skaitli, kas nodots kā arguments noteiktam ciparu skaitam, un atgriež peldošā komata vērtību
Min. () atgriezt noteiktā saraksta minimālo elementu
Maks. () atgriezt noteiktā saraksta maksimālo elementu
len () Atgriež saraksta garumu
Uzskaitīt () Šī iebūvētā funkcija ģenerē gan iterējamo vienumu vērtības, gan indeksus, tāpēc mums nav nepieciešams skaitīt manuāli
Filtrs () pārbauda, ​​vai katrs saraksta elements ir patiess vai nē
Lambda Izteiksme, kas var parādīties vietās, kur def (funkciju izveidei) nav sintaktiska, saraksta burtiskā vai funkcijas izsaukuma argumentu iekšpusē
Karte () atgriež rezultātu sarakstu pēc dotās funkcijas piemērošanas katram dotā iterējamā elementa
Uzkrāt () pielietot noteiktu argumentā nodoto funkciju visiem saraksta elementiem atgriež sarakstu ar starpposma rezultātiem
Summa () Atgriež visu sarakstā esošo skaitļu summu
CMP () To izmanto divu sarakstu salīdzināšanai un atgriež 1, ja pirmais saraksts ir lielāks nekā otrais saraksts.
Ievietojiet Ievietojiet elementu sarakstā konkrētajā pozīcijā

Uzskaitiet metodes

FUNKCIJA APRAKSTS
Pievienot () Saraksta beigās pievieno jaunu vienumu
Notīrīt () No saraksta tiek noņemti visi vienumi
Kopēt () Atgriež sākotnējā saraksta kopiju
Pagarināt () Pievienojiet daudzus vienumus saraksta beigās
Skaits () Atgriež konkrēta saraksta vienuma gadījumu skaitu
Indekss () Atgriež konkrēta saraksta elementa indeksu
Pop () Dzēš vienumu no saraksta konkrētajā rādītājā (dzēst pēc pozīcijas)
Noņemt () Izdzēš norādīto vienumu no saraksta (dzēst pēc vērtības)
Reverss () Vietējā maiņas metode, kas maina saraksta elementu secību

Kopsavilkums

  • Saraksts ir tieši tas, kā tas izklausās, konteiners, kurā ir dažādi Python objekti, kas varētu būt veseli skaitļi, vārdi, vērtības utt.
  • Python saraksti var būt viendabīgi, tas nozīmē, ka tajos var būt tāda paša veida objekti; vai neviendabīgi, kas satur dažāda veida objektus.
  • Lai piekļūtu vērtībām sarakstos, var izmantot sarakstā esošo objektu indeksu.
  • Saraksta sagriešana ir saraksta apakškopas sadalīšanas metode, un tam tiek izmantoti arī saraksta objektu indeksi.
  • Trīs metodes saraksta elementu dzēšanai ir: 1) list.remove (), 2) list.pop () un 3) del operators
  • Elementu pievienošanai tiek izmantota pievienošanas metode. Tādējādi saraksta beigās tiek pievienots elements.
  • Python programmas cilpu metodi var vienlaikus veikt vairākos datu saraksta elementos.
  • Sarakstu izpratne ir Python funkcijas, kuras tiek izmantotas jaunu secību (piemēram, sarakstu, vārdnīcu utt.) Izveidošanai, izmantojot jau izveidotas sekvences.