Pythoni loend: mõistmine, apend, sorteerimine, pikkus, pöördnäited

Lang L: none (table-of-contents):

Anonim

Mis on Pythoni loend?

Nimekiri on täpselt selline, nagu see kõlab, konteiner, mis sisaldab erinevaid Pythoni objekte, mis võivad olla täisarvud, sõnad, väärtused jne. See on samaväärne massiiviga teistes programmeerimiskeeltes. Seda tähistatakse nurksulgudes (ja see on üks atribuutidest, mis eristab seda sulgudega eraldatud paaridest). See on ka muutuv, see tähendab, et seda saab muuta või uuendada; erinevalt paaridest, mis on muutumatud.

Selles püthoni õpetuses saate teada:

  • Mis on Pythoni loend?
  • Näited Pythoni loenditest:
  • Väärtustele juurdepääs loendites
  • Loendi viilutamine
  • Loendite värskendamine
  • Loendielementide kustutamine
  • Loendielementide lisamine
  • Sisseehitatud funktsioonide (meetodite) loetelu
  • Nimekirjade sirvimine
  • Loetlege arusaamad

Näited Pythoni loenditest:

Pythoni loendid võivad olla homogeensed, mis tähendab, et need võivad sisaldada sama tüüpi objekte; või heterogeensed, sealhulgas erinevat tüüpi objektid.

Homogeensete loendite näited hõlmavad järgmist:

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]

Heterogeensete loendite näited hõlmavad järgmist:

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

Väärtustele juurdepääs loendites

Loenditesisestele väärtustele juurde pääsemiseks saab kasutada loendites olevate objektide indeksit. Index Pythoni loendites viitab elemendi positsioonile järjestatud loendis. Näiteks:

list = [3, 22, 30, 5.3, 20]
  • Ülaltoodud loendi esimese väärtuse 3 indeks on 0
  • Teise väärtuse, 22, indeks on 1
  • Kolmanda väärtuse, 30, indeks on 2

ja nii edasi. Kõigile loendis olevatele väärtustele juurde pääsemiseks kasutage järgmist:

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

Loendi viimasele liikmele pääseb juurde ka indeksi -1 abil. Näiteks,

list[-1] = 20

Loendi viilutamine

Loendi viilutamine on loendi alamhulga jagamise meetod ja selleks kasutatakse ka loendi objektide indekseid. Näiteks kasutades sama ülaltoodud loetelu näidet;

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).

Pythoni loendid on ülemise piiriga eksklusiivsed ja see tähendab, et loendi viilutamise ajal viimast indeksit tavaliselt eiratakse. Sellepärast

list[2:-1] = [30, 5.3] 
ja mitte [30, 5.3, 20]. Sama kehtib kõigi teiste ülaltoodud loendi viilutamise näidete kohta.

Loendite värskendamine

Oletame, et teil on nimekiri = [füüsika, keemia, matemaatika] ja soovite loendi muuta [bioloogia, keemia, matemaatika], muutes liikme indeksis 0. Seda saab hõlpsasti teha, määrates selle indeksi uus liige, keda soovite.

See on,

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

Väljund: [bioloogia, keemia, matemaatika]

See asendab indeksis 0 (füüsika) oleva liikme uue soovitud väärtusega (keemia). Seda saab teha iga loendi liikme või alamhulga puhul, mida soovite muuta.

Toon veel ühe näite; Oletame, et teil on loend nimega täisarv ja sisaldab numbreid [2, 5, 9, 20, 27]. Selle loendi 5 asendamiseks kümnega saate seda teha järgmisega:

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

Täisarvude loendi viimase liikme (27) asendamiseks vaba numbriga, näiteks 30,5, kasutaksite järgmist:

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

Loendielementide kustutamine

Loendielementide kustutamiseks on 3 Pythoni meetodit: list.remove (), list.pop () ja operaator del. Eemaldamise meetod võtab konkreetse elemendi argumendina eemaldamise, samal ajal kui pop ja del võtavad argumendina eemaldatava elemendi indeksi. Näiteks:

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

3 (1. element) loendist kustutamiseks võite kasutada järgmist:

  • list.remove (3) või
  • list.pop [0] või
  • kustuta loend [0]

Indeksi 3 üksuse 8 loendist kustutamiseks võite kasutada järgmist:

  • list.remove (8) või
  • list.pop [3]

Loendielementide lisamine

Elementide lisamiseks loendisse kasutatakse meetodit Lisa ja see lisab elemendi loendi lõppu.

Näiteks:

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"]

Sisseehitatud funktsioonide (meetodite) loetelu

Järgnevas loendis on sisseehitatud funktsioonide ja meetodite loetelu koos nende kirjeldustega:

  • len (nimekiri): see annab väljundina loendi pikkuse. Näiteks:
numbers = [2, 5, 7, 9]print(len(numbers))>>> 4
  • max (list): tagastab loendis oleva üksuse maksimaalse väärtusega. Näiteks:
numbers = [2, 5, 7, 9]print(max(numbers))>>> 9
  • min (loend): tagastab loendis oleva elemendi minimaalse väärtusega. Näiteks:
numbers = [2, 5, 7, 9]print(min(numbers))>>> 2
  • list (tuple): teisendab kahekordse objekti loendi. Näiteks;
animals = (cat, dog, fish, cow)print(list(animals))>>> [cat, dog, fish, cow]
  • list.append (element): lisab elemendi loendisse. Näiteks;
numbers = [2, 5, 7, 9]numbers.append(15)print(numbers)>>> [2, 5, 7, 9, 15]
  • list.pop (register): eemaldab loendis määratud indeksi elemendi. Näiteks;
numbers = [2, 5, 7, 9, 15]numbers.pop(2)print(numbers)>>> [2, 5, 9, 15]
  • list.remove (element): kustutab loendist elemendi. Näiteks;
values = [2, 5, 7, 9]values.remove(2)print(values)>>> [5, 7, 9]
  • list.reverse (): tühistab loendi objektid. Näiteks;
values = [2, 5, 7, 10]values.reverse()print(values)>>> [10, 7, 5, 2]
  • list.index (element): loendis oleva elemendi indeksi väärtuse saamiseks. Näiteks;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']fish_index = animals.index('fish')print(fish_index)>>> 2
  • summa (loend): kõigi loendis olevate väärtuste summa saamiseks, kui väärtused on kõik arvud (täisarvud või kümnendkohad). Näiteks;
values = [2, 5, 10]sum_of_values = sum(values)print(sum_of_values)>>> 17

Kui loendis on mõni element, mis pole arv, näiteks string, ei tööta summa meetod. Võite saada vea öeldes: " TypeError : +: 'int' ja 'str' toetamata operandi tüüp (tüübid)"

  • list.sort (): täisarvude, ujukomaarvude või stringide loendi korrastamiseks kasvavas või kahanevas järjekorras. Näiteks:
values = [1, 7, 9, 3, 5]# To sort the values in ascending order:values.sort()print(values)>>> [1, 3, 5, 7, 9]

Veel üks näide:

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

Stringiloendit saab sortida kas tähestiku järgi või stringide pikkuse järgi. Näiteks;

# 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']

Saame sorteerida sama loendi tähestikulises järjekorras, kasutades stringe.

Nimekirjade sirvimine

Loendite sirvimist saab teha samamoodi nagu mis tahes muud Pythoni silmusfunktsioonid. Nii saab meetodit korraga kasutada loendi mitmel elemendil. Näiteks:

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

Selle loendi kõigi elementide sirvimiseks ja oletame, et lisage igale elemendile 10:

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

Loendi kolme esimese elemendi sirvimiseks ja nende kustutamiseks;

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

Et ahela kaudu 3 rd (indeks 2) viimase elemendi nimekirja ja nende lisamiseks uue loendi nimega 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]

Sel viisil saab loendi liikmetele konkreetse toimingu sooritamiseks rakendada ükskõik millist meetodit või funktsiooni. Loendi viilutamise abil saate liikuda läbi kõigi loendi liikmete või loendi alamhulga.

Loetlege arusaamad

Loendi mõistmine on Pythoni funktsioon, mida kasutatakse juba loodud järjestuste abil uute jadade (näiteks loendite, sõnastike jms) loomiseks. Need aitavad vähendada pikemaid tsükleid ning muudavad teie koodi hõlpsamini loetavaks ja hooldatavaks.

Näiteks; Oletame, et soovisite luua loendi, mis sisaldab kõigi arvude ruutu vahemikus 1 kuni 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]

Sama toimimine loendi mõistmisega:

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]

Nagu ülalpool näha, on loendi mõistmise abil koodi kirjutamine palju lühem kui traditsiooniline tsüklite jaoks ja on ka kiirem. See on vaid üks näide loendite mõistmise kasutamisest silmuste asemel, kuid seda saab korrata ja kasutada paljudes kohtades, kus saab kasutada ka silmuste jaoks. Mõnikord on for loopi jaoks parem valik, eriti kui kood on keeruline, kuid paljudel juhtudel muudab loendi mõistmine teie kodeerimise lihtsamaks ja kiiremaks.

Allpool on tabel, mis sisaldab loendi funktsioone ja meetodeid ning nende kirjeldusi.

Sisseehitatud funktsioonid

FUNKTSIOON KIRJELDUS
Ümmargune () Ümardab argumendina edastatud arvu määratud arvu numbriteni ja tagastab ujukoma väärtuse
Min () tagastab antud loendi minimaalse elemendi
Max () tagastab antud loendi maksimaalse elemendi
len () Tagastab loendi pikkuse
Loendage () See sisseehitatud funktsioon genereerib itereeritavas üksuste väärtused ja indeksid, nii et me ei pea käsitsi loendama
Filter () testib, kas loendi iga element vastab tõele või mitte
Lambda Avaldis, mis võib ilmuda kohtades, kus def (funktsioonide loomiseks) pole süntaktiline, loendi literaali sees või funktsiooni kutsungargumendid
Kaart () tagastab tulemuste loendi pärast antud funktsiooni rakendamist antud iterable'i igale üksusele
Kogunema () Rakenda oma argumendis edastatud konkreetne funktsioon kõigile loendi elementidele tagastab loendi, mis sisaldab vahetulemusi
Summa () Tagastab loendis kõigi arvude summa
CMP () Seda kasutatakse kahe loendi võrdlemiseks ja tagastatakse 1, kui esimene loend on suurem kui teine ​​loend.
Sisesta Sisestage element loendis konkreetses positsioonis

Loetlege meetodid

FUNKTSIOON KIRJELDUS
Lisa () Lisab loendi lõppu uue üksuse
Kustuta () Eemaldab loendist kõik üksused
Kopeeri () Tagastab koopia algsest loendist
Laienda () Lisage loendi lõppu palju üksusi
Loend () Tagastab loendis konkreetse üksuse esinemiste arvu
Indeks () Tagastab loendi konkreetse elemendi indeksi
Pop () Kustutab üksuse konkreetse registri loendist (kustuta positsiooni järgi)
Eemalda () Kustutab loendist määratud üksuse (kustuta väärtuse järgi)
Tagurpidi() Kohapealne ümberpööramismeetod, mis muudab loendi elementide järjekorra

Kokkuvõte

  • Nimekiri on täpselt see, nagu see kõlab, konteiner, mis sisaldab erinevaid Pythoni objekte, mis võivad olla täisarvud, sõnad, väärtused jne.
  • Pythoni loendid võivad olla homogeensed, see tähendab, et need võivad sisaldada sama tüüpi objekte; või heterogeensed, mis sisaldavad erinevat tüüpi objekte.
  • Loenditesisestele väärtustele juurde pääsemiseks saab kasutada loendites olevate objektide indeksit.
  • Loendi viilutamine on loendi alamhulga jagamise meetod ja selleks kasutatakse ka loendi objektide indekseid.
  • Kolm meetodit loendielementide kustutamiseks on: 1) list.remove (), 2) list.pop () ja 3) operaator del
  • Elementide lisamiseks kasutatakse meetodit Lisa. See lisab elemendi loendi lõppu.
  • Pythoni programmi tsüklimeetodit saab samaaegselt teostada mitmel andmeloendi elemendil.
  • Loendi mõistmine on Pythoni funktsioon, mida kasutatakse juba loodud järjestuste abil uute jadade (näiteks loendite, sõnastike jms) loomiseks.