Pylint警告:可能会按顺序打开不平衡的元组

use*_*464 7 python tuples pylint packing

我有一段Python代码:

def func1():                                                                                                                  
    a=set()
    b = ','.join(map(str, list(a)))
    return  b, []

def func2():
    d = 1
    e = 2
    return func1() + (d, e,)

def main():
    a,b,c,d = func2()

if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

通过pylint(1.4.0)运行它时,我收到警告:

W: 12, 4: Possible unbalanced tuple unpacking with sequence: left side has 4 label(s), right side has 3 value(s) (unbalanced-tuple-unpacking)
Run Code Online (Sandbox Code Playgroud)

似乎func2总是会返回四个结果。错误是什么意思,为什么?

小智 7

如果警告是错误的,则可以通过添加# pylint: disable=unbalanced-tuple-unpacking到行中来禁用警告。