Hướng dẫn python deque access by index - python và truy cập bằng chỉ mục

Nếu bạn đang sử dụng Python 2.x, deque không phải là một lựa chọn tốt nếu bạn muốn tra cứu. Bạn có thể sử dụng list hoặc thực hiện những điều sau đây bằng cách sử dụng enumerate():

>>> def index(element, queue):
...     for i, ele in enumerate(queue):
...         if ele == element:
...             return i
...     raise ValueError("{} is not in queue".format(element))

>>> index(2, deque([1, 2, 3, 4]))
1

Ngoài ra, bạn có thể thực hiện hàng đợi của riêng mình:

>>> class IndexedDeque(deque):
...     def index(self, element):
...         for i, ele in enumerate(self):
...             if ele == element:
...                 return i
...         raise ValueError("{} is not in queue".format(element))    

>>> d_list = IndexedDeque([1, 2, 3, 4])
>>> d_list.index(2)
1

bộ sưu tập nhập khẩu

Words = comcands.deque (("jack", "và", "jill", "đã đi", "up", "the", "hill", "to",

& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "Fetch", "A", "Pail", "của", "Water"))

StartIndex & NBSP; = 2

stopindex & nbsp; & nbsp; = 7

What2find & nbsp; & nbsp; = "Đồi"

pos = words.index (what2find, startindex, stopindex)

In ("Từ '%s' được tìm thấy tại Index:%D"%(What2find, Pos)))

Bài viết: 11.401

Chủ đề: 433

Danh tiếng: 441

  • Bạn có thể lập chỉ mục vào một con trăn deque?
  • Chỉ mục () Phương thức của lớp deque trong Python Index () Tìm kiếm một phần tử được định nghĩa bởi tham số ELEM và trả về chỉ mục mà tại đó phần tử được tìm thấy trong Python deque.
  • Bài viết: 11.401

    Chủ đề: 433

    Danh tiếng: 441

    Bạn có thể lập chỉ mục vào một con trăn deque?

    Chỉ mục () Phương thức của lớp deque trong Python Index () Tìm kiếm một phần tử được định nghĩa bởi tham số ELEM và trả về chỉ mục mà tại đó phần tử được tìm thấy trong Python deque. Accessing the elements by their index. 

    Làm thế nào để bạn truy cập các yếu tố của một deque trong Python?

    Python3

    Phương pháp 1: Truy cập các yếu tố theo chỉ mục của chúng. Cấu trúc dữ liệu deque từ mô -đun bộ sưu tập không có phương pháp PEEK, nhưng kết quả tương tự có thể đạt được bằng cách tìm nạp các phần tử bằng dấu ngoặc vuông. Phần tử đầu tiên có thể được truy cập bằng [0] và phần tử cuối cùng có thể được truy cập bằng [-1].

    Là một con trăn fifo deque?

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    5

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    7
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    8
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    9

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    7
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    deque(['for', 'Geeks', 'is'])
    
    2
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    deque(['for', 'Geeks', 'is'])
    
    3
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    9

    Output:

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    

    Hàng đợi Python là một thư viện tích hợp cho phép bạn tạo một danh sách sử dụng quy tắc FIFO, trước tiên. Python Deque sử dụng quy tắc ngược lại, xếp hàng của Lifo hoặc cuối cùng ra khỏi đầu tiên.Using the popleft() and pop() method

    Deque có nhanh hơn danh sách không?

    Python3

    Phương pháp 1: Truy cập các yếu tố theo chỉ mục của chúng. Cấu trúc dữ liệu deque từ mô -đun bộ sưu tập không có phương pháp PEEK, nhưng kết quả tương tự có thể đạt được bằng cách tìm nạp các phần tử bằng dấu ngoặc vuông. Phần tử đầu tiên có thể được truy cập bằng [0] và phần tử cuối cùng có thể được truy cập bằng [-1].

    Là một con trăn fifo deque?

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    5

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4list5

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4list7

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    4
    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    
    5

    Output:

    deque(['Geeks', 'for', 'Geeks', 'is', 'good'])
    Geeks
    good
    deque(['for', 'Geeks', 'is'])
    

    Tôi đã tự hỏi nếu khi bạn deque & nbsp; một danh sách, bạn vẫn có thể truy cập vào giữa danh sách bằng chỉ mục?

    Ví dụ :

    Từ các bộ sưu tập nhập Deque Q = Deque ("David", "Sally", "Ralph", "Lisa")
    q = deque("David", "Sally", "Ralph", "Lisa")

    Tôi biết tôi có thể popleft, pop & nbsp; và nối vào danh sách, nhưng tôi cũng có thể xóa các mục không phải là đầu tiên hoặc cuối cùng & nbsp; sử dụng lập chỉ mục?

    Bài viết: 1.2981,298

    Chủ đề: 3838

    Tham gia: Tháng 9 năm 2016Sep 2016

    Danh tiếng: 30 30

    Bạn đã thử chưa? Nếu vậy, kết quả là gì?

    Nếu nó không bị vỡ, tôi vẫn chưa nhận được nó. HĐH: Windows 10, OpenSuse 42.3, FreeBSD 11, Raspian "Stretch" Python 3.6.5, IDE: Pycharm 2018 Community Edition
    OS: Windows 10, openSuse 42.3, freeBSD 11, Raspian "Stretch"
    Python 3.6.5, IDE: PyCharm 2018 Community Edition

    Bài viết: 4.2314,231

    Chủ đề: 9797

    Tham gia: Tháng 9 năm 2016Sep 2016

    Danh tiếng: 30 273

    Bạn đã thử chưa? Nếu vậy, kết quả là gì?
    Weighs the Same as a Duck

    Nếu nó không bị vỡ, tôi vẫn chưa nhận được nó. HĐH: Windows 10, OpenSuse 42.3, FreeBSD 11, Raspian "Stretch" Python 3.6.5, IDE: Pycharm 2018 Community Edition4,331

    Bài viết: 4.2311,388

    Tham gia: Tháng 9 năm 2016Sep 2016

    Danh tiếng: 30 14

    Bạn đã thử chưa? Nếu vậy, kết quả là gì?

    Nếu nó không bị vỡ, tôi vẫn chưa nhận được nó. HĐH: Windows 10, OpenSuse 42.3, FreeBSD 11, Raspian "Stretch" Python 3.6.5, IDE: Pycharm 2018 Community Edition

    Bài viết: 4.231

    Chủ đề: 97
    So-and-so of the Yard

    Danh tiếng: 2732,955

    Skaperen nặng giống như một con vịt48

    Tham gia: Tháng 9 năm 2016Sep 2016

    Danh tiếng: 90 90

    Các mô -đun chỉ dành cho điều đó. Lập chỉ mục nhanh, thêm các yếu tố nhanh chóng vào cả hai bên.

    Bài viết: 591591

    Chủ đề: 2626

    Tham gia: Tháng 9 năm 2016Sep 2016

    Danh tiếng: 42 42

    .wavic Wrote: Fast indexing, fast adding elements to both sides.

    Những điều đó không giống nhau. Một deque là một danh sách được liên kết gấp đôi cho phép chèn và trích xuất thời gian không đổi ở đầu hoặc kết thúc. Nhưng nhận được một phần tử theo chỉ mục là một hoạt động thời gian tuyến tính khi bạn cần lặp lại thông qua các liên kết để có được nó.

    Từ đây https://wiki.python.org/moin/timecomplexity:

    Trích dẫn: Một deque (hàng đợi kết thúc kép) được thể hiện nội bộ dưới dạng danh sách được liên kết gấp đôi. .

    Bài viết: 11.40111,401

    Chủ đề: 433433

    Tham gia: Tháng 9 năm 2016Sep 2016

    Danh tiếng: 42 441

    Bạn có thể lập chỉ mục vào một con trăn deque?

    Chỉ mục () Phương thức của lớp deque trong Python Index () Tìm kiếm một phần tử được định nghĩa bởi tham số ELEM và trả về chỉ mục mà tại đó phần tử được tìm thấy trong Python deque. index() searches for an element as defined by the parameter elem and returns the index at which the element is found in the python deque.

    Làm thế nào để bạn truy cập các yếu tố của một deque trong Python?

    Phương pháp 1: Truy cập các yếu tố theo chỉ mục của chúng.Cấu trúc dữ liệu deque từ mô -đun bộ sưu tập không có phương pháp PEEK, nhưng kết quả tương tự có thể đạt được bằng cách tìm nạp các phần tử bằng dấu ngoặc vuông.Phần tử đầu tiên có thể được truy cập bằng [0] và phần tử cuối cùng có thể được truy cập bằng [-1].Accessing the elements by their index. The deque data structure from the collections module does not have a peek method, but similar results can be achieved by fetching the elements with square brackets. The first element can be accessed using [0] and the last element can be accessed using [-1].

    Là một con trăn fifo deque?

    Hàng đợi Python là một thư viện tích hợp cho phép bạn tạo một danh sách sử dụng quy tắc FIFO, trước tiên.Python Deque sử dụng quy tắc ngược lại, xếp hàng của Lifo hoặc cuối cùng ra khỏi đầu tiên.Python deque uses the opposite rule, LIFO queue, or last in first out.

    Deque có nhanh hơn danh sách không?

    Tất nhiên, nó có thể được thực hiện bằng cách sử dụng danh sách, nhưng với Deques, bạn đã có giao diện cho điều đó và nó nhanh hơn nhiều.it's much faster.