【发布时间】:2021-03-03 08:25:01
【问题描述】:
我只是想为内置 SimpleQueue 创建类型别名,例如:
import queue
import typing
my_queue_t = queue.SimpleQueue(maxsize=10)
但是我得到以下错误:
AttributeError: module 'queue' has no attribute 'SimpleQueue'
如何解决这个问题?
【问题讨论】:
-
根据文档,
SimpleQueue在 Python 3.7 中是新的。你用的是什么版本的 Python? -
另外,请注意您所做的不是类型别名;您只是在尝试构建单个
SimpleQueue对象。 -
版本 3.6.8。如何为 queue.Queue 创建类型别名?
-
不,因为
array('B', [0, 0, 0])返回的是一个实例,而不是一个类型。我不认为你想要一个类型别名,我认为你想要一个构造你想要的东西并返回它的函数。如果没有更多的上下文,很难确定。类型别名和TypeVars 和NewTypes 有很多用途,但我不认为这是其中之一。 :) -
SimpleQueue 是一种类型,但“SimpleQueue of maximum size 10”不是一种类型。并非所有的 Python 对象类别都是类型。
标签: python queue alias typedef