Каб дадаць элемент у спіс (масіў) тыпу 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]
Звярніце ўвагу, што insert() не з’яўляецца эфектыўнай аперацыяй, таму што патрабуе наступных выдаткаў. Вылічальную складанасць розных аперацый са спісам глядзіце на наступнай старонцы ў афіцыйнай вікі.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]