Додавання елементів до списку (масиву) в Python: append(), extend(), insert()

Бізнес

Щоб додати елемент до списку (масиву) типу list у Python або об’єднати інший список, використовуйте методи списку append(), extend() та insert(). Ви також можете використовувати оператор + або зріз, щоб указати позицію та призначити її.

Тут наведено наступну інформацію.

  • Додайте елементи в кінці:append()
  • Об’єднати інший список або кортеж в кінці (конкатенація):extend(),+оператор
  • Додати (вставити) елемент у вказану позицію.:insert()
  • Додайте (вставте) інший список або кортеж у вказане місце:скибочка

Додайте елементи в кінці:append()

Використовуючи метод append() списку, ви можете додавати елементи в кінець (останній). Якщо ви хочете додати його в іншу позицію, ніж кінець, наприклад, у верхній частині, скористайтеся insert(), як описано нижче.

l = list(range(3))
print(l)
# [0, 1, 2]

l.append(100)
print(l)
# [0, 1, 2, 100]

l.append('new')
print(l)
# [0, 1, 2, 100, 'new']

Списки також додаються як один елемент. Вони не поєднуються.

l.append([3, 4, 5])
print(l)
# [0, 1, 2, 100, 'new', [3, 4, 5]]

Об’єднати інший список або кортеж в кінці (конкатенація):extend(),+оператор

За допомогою методу списку extend() ви можете об’єднати інший список або кортеж в кінці (кінці). Усі елементи будуть додані в кінець вихідного списку.

l = list(range(3))
print(l)
# [0, 1, 2]

l.extend([100, 101, 102])
print(l)
# [0, 1, 2, 100, 101, 102]

l.extend((-1, -2, -3))
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3]

Зверніть увагу, що кожен символ (елемент) додається до рядка по одному символу.

l.extend('new')
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w']

Також можна конкатенувати за допомогою оператора + замість методу extend().

+, повертається новий список.+=Це також дозволить вам додати його до наявного списку.

l2 = l + [5, 6, 7]
print(l2)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w', 5, 6, 7]

l += [5, 6, 7]
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w', 5, 6, 7]

Додати (вставити) елемент у вказану позицію.:insert()

Метод списку insert() може додавати (вставляти) елемент у вказану позицію.

Перший аргумент визначає позицію, а другий — елемент, який потрібно вставити. Перша (початкова) позиція — 0; для від’ємних значень -1 – остання (кінцева) позиція.

l = list(range(3))
print(l)
# [0, 1, 2]

l.insert(0, 100)
print(l)
# [100, 0, 1, 2]

l.insert(-1, 200)
print(l)
# [100, 0, 1, 200, 2]

Як і у випадку append(), список додається як один елемент. Він не буде об’єднаний.

l.insert(0, [-1, -2, -3])
print(l)
# [[-1, -2, -3], 100, 0, 1, 200, 2]

Зауважте, що вставка() не є ефективною операцією, оскільки вимагає наступних витрат. Перегляньте наступну сторінку в офіційній вікі, щоб дізнатися про складність обчислень різних операцій зі списком.
O(n)

O(1)
Тип deque надається в модулі колекцій стандартної бібліотеки як тип для додавання елементів у верхній частині за цією вартістю. Наприклад, якщо ви хочете розглядати дані як чергу (FIFO), ефективніше використовувати deque.

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

Якщо вказати діапазон за допомогою зрізу та призначити інший список або кортеж, усі елементи будуть додані (вставлені).

l = list(range(3))
print(l)
# [0, 1, 2]

l[1:1] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 1, 2]

Ви також можете замінити оригінальний елемент. Усі елементи у вказаному діапазоні будуть замінені.

l = list(range(3))
print(l)
# [0, 1, 2]

l[1:2] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 2]