Python Python 类的动态属性、动态方法在 IDE 里面自动补全;这个有办法实现吗?

guolong123 · 2020年10月14日 · 最后由 guolong123 回复于 2020年10月16日 · 2383 次阅读

class OBJ:
    pass

def func():
    print('im function!')
    return 1

obj = OBJ()
setattr(obj, 'func', func)
print(obj.func())

如上,给对象 obj 动态设置了一个方法 func,在下面调用时希望让 IDE 自动补全方法名,有办法实现没?

共收到 2 条回复 时间 点赞

setattr 不行,直接赋值是可以的 obj.func=func

花菜 回复

可是我要动态赋值肯定是因为没法直接赋值啊...有没有可能先给类设定一个初始方法,再重写这个方法,最后替换类属性;做到欺骗 IDE

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册