Danh sách Python popleft

首先对于pop而言,它是用于stack中的:

stack = [1, 2, 3, 4]
print[stack]
stack.append[6]
print[stack]
print[stack.pop[1]]  #  可以带参数
print[stack]

运行结果:

[1, 2, 3, 4]
[1, 2, 3, 4, 6]
2
[1, 3, 4, 6]

而对于pooleft是用于collections中,

from collections import deque
name = deque[["aaa", "bbb", "ccc", "ddd"]]
print[name]
name.append["xxx"]
print[name]
name.append["yyy"]
print[name]
print[name.popleft[]]  #  不可以带参数
print[name]

运行结果:

deque[['aaa', 'bbb', 'ccc', 'ddd']]
deque[['aaa', 'bbb', 'ccc', 'ddd', 'xxx']]
deque[['aaa', 'bbb', 'ccc', 'ddd', 'xxx', 'yyy']]
aaa
deque[['bbb', 'ccc', 'ddd', 'xxx', 'yyy']]

Deque về cơ bản là sự khái quát hóa cấu trúc ngăn xếp và hàng đợi, nơi nó được khởi tạo từ trái sang phải. Nó sử dụng đối tượng list để tạo deque. Nó cung cấp độ phức tạp thời gian O[1] để bật và nối thêm

Dequeis một lớp thư viện tiêu chuẩn, nằm trong mô-đun bộ sưu tập

Để sử dụng nó, trước tiên chúng ta cần nhập nó mô-đun thư viện tiêu chuẩn của bộ sưu tập

import collections

Trong phần này chúng ta sẽ xem một số chức năng của lớp Deque

Các chức năng Appending trên Deque

Có hai loại append khác nhau. Phương thức append[] được sử dụng để thêm các phần tử ở đầu bên phải của hàng đợi và phương thức appendleft[] được sử dụng để nối thêm phần tử ở bên trái của hàng đợi

Mã ví dụ

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque['124dfre']
   print['Dequeue: ' + str[my_deque]]
      #insert x at right and B at left
      my_deque.append['x']
      my_deque.appendleft['B']
   print['Dequeue after appending: ' + str[my_deque]]

đầu ra

Dequeue: deque[['1', '2', '4', 'd', 'f', 'r', 'e']]
Dequeue after appending: deque[['B', '1', '2', '4', 'd', 'f', 'r', 'e', 'x']]

Các chức năng Popping trên Deque

Giống như nối thêm, có hai loại hàm pop khác nhau. Phương thức pop[] được sử dụng để xóa và trả về phần tử bên phải nhất khỏi hàng đợi và phương thức popleft[] được sử dụng để xóa và trả về phần tử bên trái nhất khỏi hàng đợi

Mã ví dụ

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque['124dfre']
   print['Dequeue: ' + str[my_deque]]
      #delete item from right and left
      item = my_deque.pop[]
   print['Popped Item: ' + str[item]]
      item = my_deque.popleft[]
   print['Popped Item: ' + str[item]]
print['Dequeue after pop operations: ' + str[my_deque]]

đầu ra

________số 8

Các chức năng liên quan đến item trong Deque

Một số hàm trong Deque dùng để lấy thông tin liên quan đến item. Có một số hàm như index[], count[], v.v. Phương thức chỉ mục được sử dụng để lấy chỉ mục của lần xuất hiện đầu tiên của một phần tử. Khi không truyền đối số với phần tử, nó sẽ chọn toàn bộ danh sách, khi chỉ định một giới hạn nào đó, nó sẽ kiểm tra chỉ mục trong giới hạn đó. Mặt khác, phương thức count[] đếm tần suất của một mục trong Deque

Mã ví dụ

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque['AABCDDEFD']
   print['Dequeue: ' + str[my_deque]]
      #find the index of D
   print['Index of D:' + str[my_deque.index['D']]]
print['Index of D in range 5 to 8 is: ' + str[my_deque.index['D', 5, 8]]]
#Count the number of occurrences
   print['Occurrences of A: ' + str[my_deque.count['A']]]
print['Occurrences of D: ' + str[my_deque.count['D']]]

đầu ra

[1, 2, 3, 4]
[1, 2, 3, 4, 6]
2
[1, 3, 4, 6]
0

Các hàm insert[] và remove[] trong Deque

Chúng ta đã thấy các hàm append và pop trong Deque để chèn và xóa các phần tử tương ứng. Có hai phương pháp khác liên quan đến chèn và xóa. Phương thức insert[] được sử dụng để chèn một số. Trong trường hợp này, chúng tôi có thể cung cấp chỉ mục để chèn. Vì vậy, trên một vị trí được chỉ định, mục có thể được chèn. Và phương thức remove[] dùng để loại bỏ lần xuất hiện đầu tiên của một phần tử

Mã ví dụ

[1, 2, 3, 4]
[1, 2, 3, 4, 6]
2
[1, 3, 4, 6]
1

đầu ra

[1, 2, 3, 4]
[1, 2, 3, 4, 6]
2
[1, 3, 4, 6]
2

Mở rộng hàm trong Deque

Các hàm mở rộng được sử dụng để thêm nhiều phần tử vào Deque. Chúng tôi có thể sử dụng các bộ sưu tập như danh sách, bộ dữ liệu để cung cấp nhiều giá trị. Có hai loại chức năng mở rộng. Phương thức expand[] dùng để thêm phần tử vào bên phải, nó tương tự như hàm append[] lặp đi lặp lại. Và phương thức Extendleft[] dùng để thêm phần tử vào bên trái, nó tương tự như hàm appendleft[] lặp đi lặp lại

Mã ví dụ

[1, 2, 3, 4]
[1, 2, 3, 4, 6]
2
[1, 3, 4, 6]
3

đầu ra

import collections as col
#Insert some elements into the queue at first
my_deque = col.deque['124dfre']
   print['Dequeue: ' + str[my_deque]]
      #insert x at right and B at left
      my_deque.append['x']
      my_deque.appendleft['B']
   print['Dequeue after appending: ' + str[my_deque]]
0

Các chức năng đảo ngược và xoay trong Deque

Chúng ta có thể đảo ngược trình tự của dequeuer bằng phương thức reverse[]. Có một phương pháp gọi là rotate[]. Sử dụng phương thức xoay, deque có thể được xoay với số được chỉ định làm đối số. Nếu đối số là dương, nó sẽ xoay sang phải và đối với số âm, nó sẽ xoay sang trái

Popleft có nghĩa là gì trong Python?

pop[] Xóa và trả về một phần tử từ phía bên phải của deque. Nếu không có phần tử nào, sẽ tăng IndexError. popleft[] Xóa và trả về phần tử từ phía bên trái của deque .

Tại sao sử dụng deque thay vì danh sách?

Deque cho phép bạn thêm và xóa các phần tử khỏi cả phần đầu và phần đuôi trong thời gian không đổi , không giống như danh sách chỉ có hằng số .

Dequeue trong Python là gì?

Hàng đợi hai đầu hoặc deque, có tính năng thêm và xóa các phần tử ở một trong hai đầu. Mô-đun Deque là một phần của thư viện bộ sưu tập. Nó có các phương thức để thêm và xóa các phần tử có thể được gọi trực tiếp bằng các đối số.

append left là gì?

appendleft[] thêm một phần tử vào phía bên trái của đối tượng deque .

Chủ Đề