Использование deque insert () для объединения двух списков? - PullRequest
0 голосов
/ 08 мая 2019

Я пытаюсь вставить список точек в deque, но у меня возникают проблемы с сохранением его в непрерывном списке:

from collections import deque

pts= deque()
pts = [1, 5]
new_pts = [2, 3, 4]

pts.insert(1,new_pts)

Выход:

[1,[2, 3, 4], 5]

Желаемый вывод:

[1,2,3,4,5]

Это работает:

[pts.insert(1,pt) for pt in reversed(new_pts)]

Но, боюсь, я слишком усложняю вещи.

Ответы [ 2 ]

1 голос
/ 08 мая 2019

Вы можете использовать простую нарезку:

pts[1:1] = new_pts

Код :

pts = [1, 5]
new_pts = [2, 3, 4]

pts[1:1] = new_pts
print(pts)
# [1, 2, 3, 4, 5]
0 голосов
/ 08 мая 2019

Вам нужно использовать exteleft (), чтобы добавить более одного значения в начало очереди.

 pts.extendleft(new_pts)
...