Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:python:python_listak

< 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.append(x)
    • Hozzáadás a listához
  • list.extend(iterable)
    • Az iterable minden tagját hozzáfűzi a listához
  • list.insert(i, x)
    • Egy elem beszúrása adott pozícióba.
  • list.remove(x)
    • Az elsőként talál, x-el egyező elem törlése
  • list.pop([i])
    • Vesszük az i-dik elemet, majd töröljük.
  • list.clear()
    • Az összes elem törlése a listából.
  • list.index(x[,start[,end]])
    • Adott elem indexét adja vissza.
    • A start és end paraméterekkel, megadható az vizsgált rész.
  • list.count(x)
    • Megszámolja hány ilyen elem van.
  • list.sort(key=None, reverse=False)
    • Rendezés.
  • list.reverse()
    • Az elemek helyének megfordítása a listában.
  • list.copy()
    • Visszatér a lista másolatával.
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

oktatas/programozas/python/python_listak.txt · Utolsó módosítás: 2024/11/16 10:22 szerkesztette: admin