【问题标题】:concurrent collections in pythonpython中的并发集合
【发布时间】:2020-02-26 20:08:05
【问题描述】:

我想知道 python 中是否有类似queue 这样的并发结构,但能够删除特定元素。

例子:

import queue

#with queue would be
q = queue.Queue()
#put some element
q.put(elem)

#i want to delete a specific element
#but queue does not provide this method
q.remove(elem)

我可以用什么?

【问题讨论】:

  • 只是一个list...?
  • 首先解释一下为什么要使用队列?默认情况下,队列具有 FIFO 的性质,因此 list 在这里可能是更好的选择
  • 队列只是线程安全结构的一个例子,列表是线程安全的吗?

标签: python collections concurrency


【解决方案1】:

实际上,Python 列表的工作方式与您正在寻找的一样。事实上,您的代码的翻译(不需要导入)应该是这样的:

#Create the list
q = [element1, element2, element3...]

#Insert element
q.insert(position, element4)

#Insert element in the end
q.append(element4)

#Remove element
del(q[position])

这样您就可以随心所欲地管理它。

希望对你有帮助。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-07-10
  • 2015-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
  • 1970-01-01
  • 2013-11-26
相关资源
最近更新 更多