Списки ( list ) у Python. Список функцій і методів

У програмуванні списки, можливо, є такою ж корисною структурою даних, як і масиви. Що таке списки, як їх створювати? Як працювати зі списками в Python? Про це ви дізнаєтеся з нашої статті.

Що таке списки в Python?

Списки ( list ) у Python. Список функцій і методів
Типи даних Python: списки

Списки можна частково ототожнювати з масивами, але відмінність і перевага лістингів (інакше їх ще називають лістингами) полягає в тому, що вони можуть комбінувати різні типи даних. Тобто лістинг відкриває більше можливостей для зберігання будь-якої послідовності об'єктів. Змінна, яка називається списком, містить посилання на структуру в пам'яті, яка містить посилання на альтернативні структури.

Список у Python — це впорядкована колекція об’єктів змішаних типів, які можна змінювати та чиї об’єкти можуть відрізнятися.

Що це означає? Давайте розглянемо визначення докладніше.

Розмір лістингу можна змінювати, зменшувати, додавати в нього нові рядки. Ви також можете змінити всю структуру списку. Майте на увазі, що кожного разу, коли використовується метод зі списку, змінюється оригінальний список, а не копія.

Для більшої ясності ви можете розглядати список у Python як список продуктів, які потрібно купити в магазині. Якщо при складанні плану покупок всі необхідні пункти розташовані один під одним, і кожен з них має свій рядок, то листинг в Python містить всі елементи, розділені комами і в квадратних дужках, щоб Python зрозумів, що тут вказано список. Елементи беруться в лапки. Це обов'язкова умова, тому що кожен елемент - окремий рядок.

Способи створення списку

Переходячи до класичного прикладу, давайте створимо список, який ми будемо використовувати та змінювати в майбутньому. Є кілька способів створення списків.

Одним з них є додаток список вбудованих функцій ( ). Для цього вам потрібно обробити будь-який об’єкт, який можна повторити (рядок, кортеж або існуючий список). У цьому випадку рядок.

Ось що відбувається в кінці:

>>> list('list') ['c', 'n', 'i', 'c', 'o', 'to']

Другий приклад показує, що списки можуть містити необмежену кількість дуже різних об’єктів. Крім того, список може залишатися порожнім.

>>> s = [] # Порожній список >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['isok'], 2]

Наступним, третім, способом формування листингів є т. зв генератор лістингу.

Генератор списків — це синтаксична конструкція для створення списків. Він схожий на цикл for.

>>> c = [c * 3 для c у 'списку'] >>> c ['lll', 'iii', 'sss', 'ttt']

Також з його допомогою можна створити більш об’ємні конструкції:

>>> c = [c * 3 для c у 'списку', якщо c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d для c в 'списку', якщо c != 'i' для d в 'спамі', якщо d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

Однак цей метод генерації не завжди ефективний при складанні кількох списків. Тому для створення списків доцільно використовувати цикл for.

Якщо потрібно звернутися до будь-якого елемента зі списку, то використовуються індекси. Кожен елемент має свій індекс.

Індекс - це номер елемента в списку.

Якщо ви хочете заповнити лістинг однаковими елементами, що повторюються, використовується символ *. Наприклад, вам потрібно додати в лістинг три однакових числа: [100] * 3.

Функції лістингу

Функції – це чи не головна перевага Python перед іншими мовами програмування. До списків можна застосовувати основні вбудовані функції.

Розглянемо найбільш популярні з них:

  • список (діапазон ( )) – якщо стоїть завдання створити послідовний список, то використовується функція діапазону. Ця функція має такі форми:
  1. діапазон (кінець). Використовується, коли необхідно створити лістинг від нуля до кінцевого числа.
  2. діапазон (початок, кінець). Вказуються початковий і кінцевий номери.
  3. діапазон (початок, кінець, крок). Параметр step задає характеристику вибору. Наприклад, якщо вам потрібно вибрати кожне п'яте число з послідовності від 1 до 21, то результуючий лістинг матиме такий вигляд: [10,15, 20].

Функція діапазону може значно зменшити обсяг коду.

  • льон (перелік) – дозволяє дізнатися, скільки елементів у списку.
  • відсортовано (список, [ключ]) – сортує об’єкти в списку за зростанням.
  • max (список) – повертає найбільший елемент.
  • хв (список) – протилежна функція – дозволяє повернути елемент з мінімальним значенням.

Ви також можете використовувати інші вбудовані функції:

  • список (кортеж) – Перетворює об’єкт кортежу на список.
  • сума (список) – підсумовує всі елементи в списку, якщо всі значення є числами, застосовується як до цілих чисел, так і до десяткових. Однак у неї не завжди все виходить правильно. Якщо в списку є нечисловий елемент, функція видасть помилку: «TypeError: unsupported operand type(s) for +: ‘int’ and ‘str’».

Методи лістингу

Списки ( list ) у Python. Список функцій і методів
Список методів Python

Давайте повернемося до нашого списку товарів, які можна купити в магазині, і назвемо його список магазинів:

список магазинів = []

Далі розглянемо методи лістингу:

  • додати (елемент) – з його допомогою можна додати елемент до списку. У цьому випадку новий елемент буде в кінці.

Давайте заповнимо наш новий список потрібними продуктами:

shoplist.append(хліб)

shoplist.append(молоко)

  • списокрозширити(A) – додає «список до списку». Ця функція економить час, оскільки ви можете додавати кілька елементів одночасно. Припустимо, у нас уже є список фруктів, нам потрібно додати їх до основного списку.

shoplist.extend(фрукти)

  • вставити (індекс, елемент) – вставляє в елемент із вказаним індексом вказане значення перед вказаним індексом.
  • lcount(елемент) – показує кількість повторів елемента.
  • списоквидалити(пункт) є протилежною функцією списокдодати (x). Його можна використовувати для видалення будь-якого елемента. Якщо вибраного елемента немає в списку, повідомляється про помилку.
  • pop([індекс]) – видаляє виділений елемент і повертає його таким же чином. Якщо елемент не вказано, то останній елемент видаляється зі списку.
  • sort([ключ]) – розміщує елементи в списку в порядку зростання, але ви також можете вказати функцію.
  • індекс (елемент) – показує індекс першого вибраного елемента.
  • Ви можете розширити список, тобто віддзеркалити всі його елементи, використовуючи метод реверс (список). Останній елемент стає першим, передостанній – другим і так далі.
  • За допомогою команди створюється копія списку копія (список).
  • глибока копія (список) – глибоке копіювання.
  • Видаліть усі елементи списку за допомогою методу чистий список).

Варто відзначити, що методи лістингу відрізняються від методів рядків тим, що вони відразу змінюють список, тобто немає необхідності повертати результат виконання.

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> print(l) Жодного

Нижче наведено приклад роботи зі списками:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

залишити коментар