在Python中,许多方法使用“标准化”名称定义参数变量,如:
def __exit__(self, type, value, traceback):在上面的行中,变量类型会导致pylint警告(W0622)一个内建正在被重新定义:重新定义内置的‘类型’(重新定义的-内置的)。
有许多方法可以解决这个问题,并使pylint高兴(重命名变量,添加一个pylint指令(# pylint: disable=W0622)来忽略问题等等)。
在这种情况下,保持良好代码质量和使pylint高兴的最佳/首选/建议/建议/常规方法(如果有的话)是什么?
发布于 2019-12-11 14:20:12
禁用pylint警告可以被认为是一种糟糕的做法。
为了使
__exit__正常工作,它必须有三个参数: exception_type、exception_value和traceback。方法定义中的形式参数名称不需要与这些名称直接对应,但它们必须按此顺序出现。
因此,一个很好的选择可以是使用元组打包def __exit__(self, *exc)。
这是在本正式文档中所建议的:https://docs.python.org/3/library/contextlib.html
https://stackoverflow.com/questions/56056551
复制相似问题