VS Code中解包Python类对象时参数提示高亮失效如何解决?
类对象解包时VS Code参数高亮失效问题求助
我在将类对象解包到函数时遇到参数高亮问题:VS Code无法识别解包类对象时提供的参数数量。
示例函数
def somefunc(attr1, attr2, a,b,c,d,e,f): pass
元组解包正常情况
使用元组解包时,VS Code能识别元组长度并正确高亮后续参数,示例代码如下:
data1 = ("Hello", "World") somefunc(*data1,1,2,3,4,5,6)

类对象解包异常情况
我定义了一个实现__iter__方法的类,期望能像元组一样解包:
class foo: attr1: str attr2: str def __init__(self, attr1, attr2): self.attr1 = attr1 self.attr2 = attr2 def empty(): return foo(None,None) def __iter__(self): return iter((self.attr1, self.attr2))
但当我解包该类的对象时:
data2 = foo("Hello", "World") somefunc(*data2,1,2,3,4,5,6)
参数高亮功能失效:
请问该如何解决这个问题?这是代码高亮器的问题,还是可以通过类型注解或其他技巧修复?我当前使用的是微软的Pylance、Python、Python Debugger插件。
内容的提问来源于stack exchange,提问作者kas pro gamer
相关产品推荐
相关产品推荐

