Python / Жагсаалтын методууд
Жагсаалтын методууд
Өмнөх хичээлд list үүсгэж, элементүүдийг уншиж сурлаа. Энэ хичээлд list-ийг өөрчлөх — элемент нэмэх, устгах, эрэмбэлэх, хайх — бүх чухал методуудыг практик жишээгээр дэлгэрэнгүй авч үзнэ. Python-ийн list маш олон нөөц хэрэгсэлтэй!
Элемент нэмэх
append() — сүүлд нэмэх
python
жимснүүд = ["алим", "гүйлс"]
жимснүүд.append("үзэм")
жимснүүд.append("тавиу")
print(жимснүүд) # ['алим', 'гүйлс', 'үзэм', 'тавиу']
insert() — тодорхой байршилд нэмэх
python
тоонууд = [1, 2, 4, 5]
тоонууд.insert(2, 3) # индекс 2-т 3 оруулах
print(тоонууд) # [1, 2, 3, 4, 5]
тоонууд.insert(0, 0) # эхэнд нэмэх
print(тоонууд) # [0, 1, 2, 3, 4, 5]
extend() — өөр list-ийг нийлүүлэх
python
эхний = [1, 2, 3]
хоёрдахь = [4, 5, 6]
эхний.extend(хоёрдахь)
print(эхний) # [1, 2, 3, 4, 5, 6]
# + оператор шинэ list үүсгэнэ — эхнийг өөрчлөхгүй
нийлсэн = [1, 2] + [3, 4]
print(нийлсэн) # [1, 2, 3, 4]
Элемент устгах
remove() — утгаар устгах
python
нэрнүүд = ["Болд", "Сарнай", "Анар", "Сарнай"]
нэрнүүд.remove("Сарнай") # анхны тохиолдлыг устгана
print(нэрнүүд) # ['Болд', 'Анар', 'Сарнай']
pop() — индексээр устгаж буцаах
python
жимснүүд = ["алим", "гүйлс", "үзэм", "тавиу"]
сүүлчийн = жимснүүд.pop() # сүүлийг авна
print(сүүлчийн) # тавиу
print(жимснүүд) # ['алим', 'гүйлс', 'үзэм']
хоёрдахь = жимснүүд.pop(1) # индекс 1-ийг авна
print(хоёрдахь) # гүйлс
print(жимснүүд) # ['алим', 'үзэм']
del — устгах өөр арга
python
тоонууд = [10, 20, 30, 40, 50]
del тоонууд[2] # индекс 2 устгах
print(тоонууд) # [10, 20, 40, 50]
del тоонууд[1:3] # slice устгах
print(тоонууд) # [10, 50]
clear() — бүгдийг устгах
python
жагсаалт = [1, 2, 3, 4, 5]
жагсаалт.clear()
print(жагсаалт) # []
Хайх ба тоолох
python
тоонууд = [3, 1, 4, 1, 5, 9, 2, 6, 1]
# index() — анхны байршил олох
print(тоонууд.index(5)) # 4 — 5 нь индекс 4-т байна
print(тоонууд.index(1)) # 1 — анхны 1-ийн байршил
# count() — хэдэн удаа давтагдсан
print(тоонууд.count(1)) # 3
print(тоонууд.count(7)) # 0
# in — байгаа эсэх
print(9 in тоонууд) # True
Эрэмбэлэх
sort() — өөрийгөө өөрчилж эрэмбэлэх
python
тоонууд = [5, 2, 8, 1, 9, 3]
тоонууд.sort() # өсөхөөр
print(тоонууд) # [1, 2, 3, 5, 8, 9]
тоонууд.sort(reverse=True) # буурахаар
print(тоонууд) # [9, 8, 5, 3, 2, 1]
нэрнүүд = ["Төгс", "Болд", "Анар", "Сарнай"]
нэрнүүд.sort()
print(нэрнүүд) # ['Анар', 'Болд', 'Сарнай', 'Төгс']
sorted() — шинэ list буцаах (эх жагсаалт хэвээр үлдэнэ)
python
анхны = [5, 2, 8, 1, 9]
эрэмбэлсэн = sorted(анхны)
print(анхны) # [5, 2, 8, 1, 9] — өөрчлөгдөөгүй
print(эрэмбэлсэн) # [1, 2, 5, 8, 9]
reverse() — дарааллыг урвуулах
python
тоонууд = [1, 2, 3, 4, 5]
тоонууд.reverse()
print(тоонууд) # [5, 4, 3, 2, 1]
copy() — хуулбар үүсгэх
python
эх = [1, 2, 3]
# ❌ Буруу — хоёулаа нэг объектыг заана
хуулбар = эх
хуулбар.append(4)
print(эх) # [1, 2, 3, 4] — эхийг ч өөрчиллөө!
# ✅ Зөв — copy() шинэ list үүсгэнэ
эх = [1, 2, 3]
хуулбар = эх.copy()
хуулбар.append(4)
print(эх) # [1, 2, 3] — хэвээр
print(хуулбар) # [1, 2, 3, 4]
Бодит жишээ — дэлгүүрийн сагс
python
сагс = []
# Бараа нэмэх
сагс.append({"нэр": "Цай", "үнэ": 8_500})
сагс.append({"нэр": "Талх", "үнэ": 3_200})
сагс.append({"нэр": "Сүү", "үнэ": 4_800})
сагс.append({"нэр": "Өндөг", "үнэ": 12_000})
# Нийт тооцоолох
нийт = sum(бараа["үнэ"] for бараа in сагс)
print("🛒 Сагсны агуулга:")
for i, бараа in enumerate(сагс, 1):
print(f" {i}. {бараа['нэр']:<10} {бараа['үнэ']:>8,}₮")
print(f"\n Нийт дүн: {нийт:>8,}₮")
Гаралт:
код
🛒 Сагсны агуулга:
1. Цай 8,500₮
2. Талх 3,200₮
3. Сүү 4,800₮
4. Өндөг 12,000₮
Нийт дүн: 28,500₮
Дараагийн хичээлд:
List-ийн бүх чухал методуудыг эзэмшлээ! Дараа нь tuple — list-тэй төстэй боловч өөрчлөгдөхгүй (immutable) өгөгдлийн бүтцийг судална. Яагаад хоёулаа байдаг, хэзээ аль нэгийг сонгох талаар тодорхой болно.