use*_*207 16 python type-hinting python-3.x python-typing
我在下面有这个功能;
def time_in_range(start, end, x):
"""Return true if x is in the range [start, end]"""
if start <= end:
return start <= x <= end
else:
return start <= x or x <= end
Run Code Online (Sandbox Code Playgroud)
函数参数均为日期时间类型。我想向函数添加输入提示。这就是我所做的;
def time_in_range(start: datetime, end: datetime, x: datetime) -> bool:
"""Return true if x is in the range [start, end]"""
if start <= end:
return start <= x <= end
else:
return start <= x or x <= end
Run Code Online (Sandbox Code Playgroud)
我收到错误NameError: name 'datetime' is not defined。为该函数添加类型的正确方法是什么?
我正在使用 python v3.7
Ped*_*ues 24
您需要导入datetime或使用字符串(请记住,这只是一个提示)。
>>> def f(x: datetime):
... pass
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'datetime' is not defined
>>> def f(x: 'datetime'):
... pass
...
>>>
>>> from datetime import datetime
>>> def f(x: datetime):
... pass
...
>>>
Run Code Online (Sandbox Code Playgroud)
蟒蛇 3.7.4
| 归档时间: |
|
| 查看次数: |
11199 次 |
| 最近记录: |