Tartalomjegyzék

< Python

Lista

Lista létrehozása

Üres lista létrehozása:

lista = [] 

Lista kezdőértékkel:

lista = ['alma', 'körte', 'barack', 'szilva'] 
lista = [32, 27, 12, 43, 85] 

Metódusok

A listák rendelkeznek néhány metódussal:

list.sort(key=None, reverse=False)
print(list)
 
list.reverse()
print(list)

A rendezést nem adhatjuk át paraméterként. Ez nem működik: print(list.sort()). Előbb rendezzük a listát, majd kiíratjuk:

lista = ['szilva', 'körte', 'barack', 'alma'] 
lista.sort()
print(lista)

Osztály listában

Gyakran állományból vagy adatbázisból olvasunk adatokat, amelyeket célszerű osztályban tárolni. Ha több ilyen sorunk, rekordunk van, azokat célszerű listában tárolni.

Üres listához, fűzzük a névtelen objektumokat.

lista.py
class Employee:
    def __init__(self, name, city):
        self.name = name
        self.city = city
 
empList = []
 
empList.append(Employee('Nagy János', 'Szolnok'))
empList.append(Employee('Baros Gábor', 'Szeged'))
empList.append(Employee('Teri Géza', 'Miskolc'))
 
for emp in empList:
    print(emp.name, emp.city, "településen lakik")

A lista kezdő elemeként adjuk meg a névtelen objektumokat:

class Employee:
  def __init__(self, name, city):
    self.name = name
    self.city = city
 
 
empList = [
  Employee("Árpád", "Szeged"),
  Employee("Tamás", "Szolnok"),
  Employee("Péter", "Pécs")
  ]
 
for emp in empList:
  print(emp.name, emp.city, "településen él")

A List osztály használata

A List osztály használata megkönnyíti a list használatát. A fejlesztői környezetek ha azt támogatják, a ciklusban, ahol a dolgozo objektum egy tagjára hivatkozunk, a tagot automatikusan felajánlja.

Importálni kell a List osztályt, és ezt használni:

from typing import List
 
empList: List[Employee] = []

A teljes kód:

list.py
from typing import List
 
class Employee:
  def __init__(self, name: str, city: str):
    self.name = name
    self.city = city
 
empList: List[Employee] = []
 
empList.append(Employee("Nagy János", "Szolnok"))
empList.append(Employee("Baros Gábor", "Szeged"))
empList.append(Employee("Teri Géza", "Miskolc"))
 
for emp in empList:
  print("Név: " + emp.name + ", Település: " + emp.city)

Forrás