使用 Python 3.6 或更高版本,我想输入提示一个返回 MyClass 对象的函数 myfunc
我如何提示 myqueue 是一个 deque| ||充满 MyClass 对象? objects?
from collections import deque
global_queue = deque()
class MyClass:
pass
def myfunc(myqueue=global_queue) -> MyClass:
return myqueue.popleft()
for i in range(10):
global_queue.append(MyClass())
以下是使用 Python 3.6+ 中的类型提示为充满
MyClass
对象的
deque
添加类型提示的方法:
from collections import deque
from typing import Deque
class MyClass:
pass
# 将 global_queue 提示为包含 MyClass 对象的 Deque
global_queue: Deque[MyClass] = deque()
def myfunc(myqueue: Deque[MyClass] = global_queue) -> MyClass:
return myqueue.popleft()
for i in range(10):
global_queue.append(MyClass())
说明:
-
导入
Deque
: 从typing
模块导入Deque
。 -
提示
global_queue
: 将global_queue
声明为一个全局变量,并使用Deque[MyClass]
对其进行类型提示。这表明global_queue
是一个包含MyClass
对象的双端队列。 -
提示
myfunc
: -
myqueue: Deque[MyClass] = global_queue
:这会将myqueue
参数提示为一个MyClass
对象的Deque
,并将其默认值设置为global_queue
。 -
-> MyClass
:这会将返回值类型提示为MyClass
。
通过这些类型提示,的代码将更易于理解和维护,并且类型检查器可以帮助及早发现潜在的错误。
标签:python,python-typing From: 51944520