黑色 --exclude 参数不排除所需文件

Joh*_*etz 7 regex python-black

假设exclude_from_black.py我的项目根目录中有以下 python 文件:

print('I want single quotes')
Run Code Online (Sandbox Code Playgroud)

我试图从黑色重新格式化中排除此文件,但以下命令似乎都不起作用:

black --exclude="exclude_from_black.py"
black --exclude="exclude_from_black\.py"
black --exclude="exclude\_from\_black\.py"
Run Code Online (Sandbox Code Playgroud)

根据文档,exclude参数采用正则表达式。我在这里做错了什么?

phi*_*sch 11

我认为你应该省略后面的空格--exclude并将正则表达式包装在/\xe2\x80\xa6/.

\n\n

尝试black --exclude '/exclude_from_black\\.py/'

\n\n

另外,为了调试,-v应该提供一些有关排除哪些文件的信息。

\n


Joh*_*etz 9

刚刚尝试了这些示例black==20.8b1,一切都按预期工作:

black --check --verbose --exclude="exclude_from_black.py" .
# exclude_from_black.py ignored: matches the --exclude regular expression

black --check --verbose --exclude="exclude_from_black\.py" .
# exclude_from_black.py ignored: matches the --exclude regular expression
Run Code Online (Sandbox Code Playgroud)

  • 确实应该使用 `--exclude="exclude_from_black\.py"` 因为它是一个正则表达式。 (3认同)