PyCQA/flake8-bugbear

Loop variable use in closure not considered

开放

#175 创建于 2021年7月11日

 (1 条评论) (0 个反应) (0 位负责人)Python (116 个派生)github user discovery
enhancementhelp wanted

仓库指标

星标
 (1,116 个星标)
PR 合并指标
 (平均合并 4小时 17分钟) (30 天内合并 3 个 PR)

描述

Running

flake8==3.9.2
flake8-bugbear==21.4.3
flake8-polyfill==1.0.2
flake8-quotes==3.2.0

on

def main():
    def f(x):
        print(i, x)

    for i in [1, 2, 3]:
        f('HI')

gives me

bugbearbug.py:5:9: B007 Loop control variable 'i' not used within the loop body. If this is intended, start the name with an underscore.

Clearly, i is being used (within the nested function), but bugbear doesn't seem to see it.

贡献者指南