在 Python 中检查一个元素是否在队列中
Check if an element is in a Queue in Python
在 Python 中检查一个元素是否在队列中:
- 访问
queue
队列上的属性以获取deque
对象。 - 使用
in
运算符检查元素是否在队列中。 in
操作员测试成员资格。
主程序
import queue q = queue.Queue() q.put(0) q.put(1) if 0 in q.queue: # 👇️ this runs print('0 is in queue') if 100 not in q.queue: # 👇️ this runs print('100 is NOT in queue')
queue
队列上的属性返回一个deque
对象。双端队列对象支持索引和成员测试。
in 运算符
测试成员资格。
例如,如果是 的成员,则x in q
计算为 ,否则计算为。True
x
q
False
如果你使用
collections.deque
类来初始化一个deque
对象,你可以直接使用in
运算符来检查一个项目是否在双端队列中。
主程序
from collections import deque deq = deque(['a', 'b']) if 'a' in deq: print('a is in deque') if 'z' not in deq: print('z is NOT in deque')
该类collections.deque
具有 atomic append()
,实现该popleft()
方法并支持索引和成员资格测试。
如果您使用了该queue
模块,请访问queue
队列上的属性以获取deque
对象。
主程序
import queue q = queue.Queue() q.put(0) q.put(1) print(q.queue) # 👉️ deque([0, 1])