PyCQA/flake8-bugbear

B018 doesn't trigger for useless expressions involving multiple variables

Open

#452 创建于 2024年1月16日

在 GitHub 查看
 (3 评论) (1 反应) (0 负责人)Python (116 fork)github user discovery
bughelp wanted

仓库指标

Star
 (1,116 star)
PR 合并指标
 (PR 指标待抓取)

描述

I recently ran into the following bug and was surprised it wasn't flagged by B018:

def some_funcion(a, b, c, d):
    result = a * b
    +c * d

    return result

that should have been

def some_funcion(a, b, c, d):
    result = (
        a * b
        + c * d
    )

    return result

It looks like B018 doesn't trigger for expressions containing multiple variables.

Here's some examples:

a * b     # doesn't trigger B018
+a * b    # doesn't trigger B018
+1 * 2    # doesn't trigger B018
-1 * 2    # doesn't trigger B018
1 * 2 + 3 # doesn't trigger B018
a + 1     # doesn't trigger B018
a         # triggers B018
(a, b)    # triggers B018
1         # triggers B018
+1        # triggers B018
-1        # triggers B018

Versions I'm using:

python version 3.10.13
flake8 version 7.0.0
flake8-bugbear version 23.12.2
ruff version 0.1.13

贡献者指南