Python Lista értelmezése, hozzáfűzése, rendezése, hossza [EXAMPLES]

Mi az a Python Lista?

A lista pontosan az, aminek hangzik, egy tároló, amely mást tartalmaz Python objektumok, amelyek lehetnek egész számok, szavak, értékek stb. Ez a tömb megfelelője más programozási nyelvekben. Szögletes zárójelekkel jelöljük (és ez az egyik attribútum, amely megkülönbözteti a soroktól, amelyeket zárójellel választunk el). Ez is változtatható, azaz módosítható, frissíthető; ellentétben a sorokkal, amelyek megváltoztathatatlanok.

Példák Python felsorolja:

Python a listák homogének lehetnek, ami azt jelenti, hogy tartalmazhatnak azonos típusú objektumokat; vagy heterogén, beleértve a különböző típusú objektumokat.

Példák a homogén listákra:

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]

Példák a heterogén listákra:

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

A listákon belüli értékek elérése

A listákon belüli értékek eléréséhez a listákon belüli objektumok indexe használható. Egy index benne Python A listák egy elem helyzetére utalnak egy rendezett listán belül. Például:

list = [3, 22, 30, 5.3, 20]
  • A fenti lista első értékének, a 3-nak az indexe 0
  • A második érték, a 22, indexe 1
  • A harmadik érték, a 30, indexe 2

stb. A lista egyes értékeinek eléréséhez a következőket kell használnia:

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

A lista utolsó tagja a -1 index használatával is elérhető. Például,

list[-1] = 20

Python Lista szeletelés

A listaszeletelés egy lista részhalmazának felosztásának módja, és ehhez a listaobjektumok indexei is használatosak. Például ugyanazt a fenti listát használva;

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 A listák felső korlátja kizárólagos, és ez azt jelenti, hogy a listaszeletelés során az utolsó indexet rendszerint figyelmen kívül hagyja. Ezért

list[2:-1] = [30, 5.3]

, és nem [30, 5.3, 20]. Ugyanez vonatkozik az összes többi listaszeletelési példára, amelyet fent említettünk.

Listák frissítése

Tegyük fel, hogy van egy listája = [fizika, kémia, matematika], és a listát a következőre szeretné módosítani: [biológia, kémia, matematika], hatékonyan megváltoztatva a 0 indexű tagot. Ez egyszerűen megtehető, ha az indexet a új tagot szeretne.

Ez az,

list = [physics, chemistry, mathematics]
    list[0] = biology
    print(list)

Kimenet: [biológia, kémia, matematika]

Ez lecseréli a 0 indexnél lévő tagot (fizika) a kívánt új értékre (kémia). Ez megtehető a lista bármely módosítani kívánt tagjánál vagy részhalmazánál.

Hogy egy másik példát mondjak; Tegyük fel, hogy van egy egész számok nevű listája, amely a [2, 5, 9, 20, 27] számokat tartalmazza. Ha a listában szereplő 5-öt 10-re szeretné cserélni, ezt a következőképpen teheti meg:

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

>>> [2, 10, 9, 20, 27]

Ha az egész számok listájának utolsó tagját, azaz a 27-et szeretné lecserélni egy szabad számra, például 30.5-re, a következőket kell használnia:

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

>>> [2, 5, 9, 20, 30.5]

Listaelemek törlése

Vannak 3 Python a listaelemek törlésének módszerei: list.remove(), list.pop() és del operátor. Az Remove metódus az eltávolítandó elemet veszi argumentumként, míg a pop és del az eltávolítandó elem indexét veszi argumentumként. Például:

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

A 3 (az 1. elem) törléséhez a listából a következőket használhatja:

  • list.remove(3) vagy
  • list.pop[0], vagy
  • del list[0]

A 8-as, a 3-as indexen lévő elem törléséhez a listából a következőket használhatja:

  • list.remove(8), vagy
  • list.pop[3]

Listaelemek hozzáfűzése

Elemek listához fűzéséhez a hozzáfűzési módszert kell használni, és ez hozzáadja az elemet a lista végéhez.

Például:

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

Beépített funkciók (módszerek) listázása

Az alábbiakban felsoroljuk a listában felsorolt ​​beépített függvényeket és metódusokat a leírásukkal együtt:

  • len(lista): ez adja meg kimenetként a lista hosszát. Például:
numbers = [2, 5, 7, 9]
print(len(numbers))
>>> 4
  • max(lista): a lista elemét adja vissza a maximális értékkel. Például:
numbers = [2, 5, 7, 9]
print(max(numbers))
>>> 9
  • min(lista): visszaadja a lista elemét a minimális értékkel. Például:
numbers = [2, 5, 7, 9]
print(min(numbers))
>>> 2
  • lista (tuple): egy tuple objektumot listává alakít. Például;
animals = (cat, dog, fish, cow)
print(list(animals))
>>> [cat, dog, fish, cow]
  • list.append(elem): hozzáfűzi az elemet a listához. Például;
numbers = [2, 5, 7, 9]
numbers.append(15)
print(numbers)
>>> [2, 5, 7, 9, 15]
  • list.pop(index): eltávolítja a listából a megadott indexen lévő elemet. Például;
numbers = [2, 5, 7, 9, 15]
numbers.pop(2)
print(numbers)
>>> [2, 5, 9, 15]
  • list.remove(elem): törli az elemet a listából. Például;
values = [2, 5, 7, 9]
values.remove(2)
print(values)
>>> [5, 7, 9]
  • lista.fordítva(): megfordítja a lista objektumait. Például;
values = [2, 5, 7, 10]
values.reverse()
print(values)
>>> [10, 7, 5, 2]
  • list.index(elem): a listán belüli elem indexértékének lekérése. Például;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']
fish_index = animals.index('fish')
print(fish_index)
>>> 2
  • összeg(lista): a lista összes értékének összege, ha az értékek mind számok (egész vagy tizedes). Például;
values = [2, 5, 10]
sum_of_values = sum(values)
print(sum_of_values)

>>> 17

Ha a lista olyan elemet tartalmaz, amely nem szám, például karakterlánc, akkor az összegzési módszer nem fog működni. Hibaüzenetet kap a következővel: „Típushiba: nem támogatott operandustípus(ok) a + karakterekhez: 'int' és 'str'

  • list.sort(): egész számok, lebegőpontos számok vagy karakterláncok listájának rendezése növekvő vagy csökkenő sorrendben. Például:
values = [1, 7, 9, 3, 5]
# To sort the values in ascending order:
values.sort()
print(values)

>>> [1, 3, 5, 7, 9]

Egy másik példa:

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

>>> [50, 14, 10, 7, 2]

A karakterláncok listája szintén rendezhető ábécé sorrendben vagy a karakterláncok hossza szerint. Például;

# to sort the list by length of the elements
strings = ['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']

Ugyanazt a listát ábécé szerint rendezhetjük a stringek használatával.

Lapozás a listákon

A listákon keresztüli hurkolást ugyanúgy lehet végrehajtani, mint bármely más ciklusos funkciót Python. Így egy metódus egy lista több elemén is végrehajtható egyszerre. Például:

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

A lista összes elemének végigfutásához, és tegyük fel, adjunk hozzá 10-et minden elemhez:

for elem in list:
        elem = elem + 5
        print(elem)
    
    >>>>15
        25
        35
        45
        55
        65
        75

A lista első három elemének végigjátszása és az összes törlése;

for elem in list[:3]:
    list.remove(elem)

    >>>list = [40, 50, 60, 70]

A 3rd (2. index) a lista utolsó eleméhez, és hozzáfűzze őket egy új listához, melynek neve 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]

Ily módon bármely vagy módszer vagy függvény alkalmazható a lista tagjaira egy adott művelet végrehajtására. A lista összes tagját vagy a lista egy részhalmazát a listaszeletelés segítségével ismételheti.

Lista megértések Python

A listaértések azok Python olyan függvények, amelyek új sorozatok (például listák, szótárak stb.) létrehozására szolgálnak már létrehozott sorozatok felhasználásával. Segítenek csökkenteni a hosszabb ciklusokat, és könnyebben olvashatóvá és karbantarthatóvá teszik a kódot.

Például; Tegyük fel, hogy olyan listát akart létrehozni, amely tartalmazza az összes szám négyzetét 1-től 9-ig:

list_of squares = []
    for int in range(1, 10):
        square = int ** 2
        list_of_squares.append(square)

    print(list_of_squares)

List_of_squares using for loop:

    [1, 4, 9, 16, 25, 36, 49, 64, 81]

Ha ugyanezt szeretné megtenni a lista értelmezésével:

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]

Amint fentebb látható, a kód írása listák megértésével sokkal rövidebb, mint a hagyományos ciklusoknál, és gyorsabb is. Ez csak egy példa arra, hogy a for ciklusok helyett a listaértelmezéseket használjuk, de ez replikálható és sok helyen használható, ahol a for ciklus is használható. Néha a for ciklus a jobb megoldás, különösen, ha a kód összetett, de sok esetben a lista megértése megkönnyíti és gyorsabbá teszi a kódolást.

Az alábbiakban egy táblázat található, amely néhány lista függvényt és metódust, valamint azok leírását tartalmazza.

Beépített funkciók

FUNKCIÓ LEÍRÁS
Kerek () Az argumentumként átadott számot meghatározott számú számjegyre kerekíti, és a lebegőpontos értéket adja vissza
Min() egy adott lista minimális elemét adja vissza
Max() egy adott lista maximális elemét adja vissza
len () A lista hosszát adja vissza
Enumerate() Ez a beépített függvény egy iterálható elem értékét és indexét is generálja, így nem kell manuálisan számolnunk
Szűrő() teszteli, hogy a lista minden eleme igaz-e vagy sem
Lambda Olyan kifejezés, amely megjelenhet olyan helyeken, ahol a def (a függvények létrehozásához) nem szintaktikai, egy list literálon belül vagy egy függvény hívási argumentumain belül
Térkép() visszaadja az eredmények listáját, miután az adott függvényt egy adott iteráció minden elemére alkalmazta
Felhalmoz() az argumentumában átadott függvény alkalmazása az összes listaelemre a köztes eredményeket tartalmazó listát adja vissza
Összeg() A listában szereplő összes szám összegét adja eredményül
Cmp() Ez két lista összehasonlítására szolgál, és 1-et ad vissza, ha az első lista nagyobb, mint a második lista.
betétlap Elem beszúrása a listához egy adott helyen

Módszerek listája

FUNKCIÓ LEÍRÁS
Mellékel() Új elemet ad a lista végéhez
Egyértelmű() Eltávolítja az összes elemet a listáról
Másolat() Visszaadja az eredeti lista másolatát
Kiterjeszt() Adjon hozzá sok elemet a lista végéhez
Számol() Egy adott elem előfordulásának számát adja vissza egy listában
Index() Egy lista egy adott elemének indexét adja vissza
Pop() Törli az elemet a listából egy adott indexnél (törlés pozíció szerint)
Eltávolítás() Törli a megadott elemet a listáról (törlés érték szerint)
Reverse() Helyi megfordítási módszer, amely megfordítja a lista elemeinek sorrendjét

Összegzésként

  • A lista pontosan az, aminek hangzik, egy tároló, amely mást tartalmaz Python objektumok, amelyek lehetnek egész számok, szavak, értékek stb.
  • Python a listák lehetnek homogének, azaz tartalmazhatnak azonos típusú objektumokat; vagy heterogén, különböző típusú objektumokat tartalmaz.
  • A listákon belüli értékek eléréséhez a listákon belüli objektumok indexe használható.
  • A listaszeletelés egy lista részhalmazának felosztásának módja, és ehhez a listaobjektumok indexei is használatosak.
  • Három módszer a listaelemek törlésére: 1)list.remove(), 2)list.pop() és 3)del operátor
  • Az Append metódus az elemek hozzáfűzésére szolgál. Ezzel az elem a lista végére kerül.
  • Looping módszere Python program egy adatlista több elemén is végrehajtható egyszerre.
  • A listaértések azok Python olyan függvények, amelyek új sorozatok (például listák, szótárak stb.) létrehozására szolgálnak már létrehozott sorozatok felhasználásával.