提问人:prosody 提问时间:10/8/2023 更新时间:10/8/2023 访问量:38
为什么 FuncTools.wraps 不保留 IntelliSense?
why isn't functools.wraps preserving intellisense?
问:
蟒蛇 3.12 PyCharm 专业版 2023.2.2
我有这个(精简的)代码,我在其中检查输入是否为 OR ,然后根据需要进行转换。装饰器就位后,pycharm 不会警告我无法传递给 .我以为functools.wraps应该解决这个确切的问题?如果我注释掉装饰器,我会得到所需的波浪形红线id
serial
get_id
df
serial_to_id
def a_decorator(func):
@functools.wraps(func)
def wrapper(*args, **kwargs):
return func(*args, **kwargs)
return wrapper
def an_id(id_or_serial):
return len(id_or_serial) == 4
@a_decorator
def serial_to_id(serial, df):
return convert(df=df, value=serial)
def get_id(id_or_serial):
return id_or_serial if an_id(id_or_serial) else serial_to_id(id_or_serial)
答: 暂无答案
上一个:高级泛型类型批注
评论