Python Vscode黑色格式化程序在项目中不工作

Python Vscode黑色格式化程序在项目中不工作,python,django,visual-studio-code,Python,Django,Visual Studio Code,我在vscode中为poetry项目中的black扩展设置了这些设置,该项目使用系统缓存和poetry-venv "editor.formatOnSave": true, "python.formatting.provider": "black", "python.formatting.blackPath": "path-to-/bin/black", "

我在vscode中为
poetry
项目中的
black
扩展设置了这些设置,该项目使用系统缓存和poetry-venv

    "editor.formatOnSave": true,
    "python.formatting.provider": "black",
    "python.formatting.blackPath": "path-to-/bin/black",
    "python.pythonPath": "path-to-/python",
    "python.linting.mypyEnabled": true,
    "python.linting.mypyPath": "path-to-/bin/mypy"

我不明白为什么格式化程序什么格式都没有。我正在使用本地工作区设置(如上)。

确保在当前使用的环境中安装了black

打开集成终端并激活venv,运行
pip show black
查看它是否安装在当前环境中。如果没有,

1.评论这两种设置

“python.formatting.provider”:“黑色”

“python.formatting.blackPath”:“指向-/bin/black的路径”

2.转到python文件,右键单击选择使用…格式化文档-->python,会弹出提示,提示您安装格式化程序,选择安装黑色。安装后,Settings.json中将自动进行以下设置:

"python.formatting.provider": "black"
然后您可以格式化文档


我发现您必须设置特定于语言的默认格式化程序。 对于python,这是微软提供的
ms python.python
扩展,它允许启用特定的格式化程序,例如autopep8、black、yapf等。注意,我收到通知说扩展名“prettier-code formatter”无法格式化file.py

"[python]": {
    "editor.defaultFormatter": "ms-python.python",
}
然后包括实际的格式化程序:

"python.formatting.provider": "black",
"python.formatting.blackPath": "/path/"

我不知道为什么会被否决。这个问题怎么了?谢谢你。尝试另一个工作流程通常有助于从另一个角度看待问题。不幸的是,它并没有解决我的问题。您是否按照我的步骤从弹出提示安装black?有没有可能你的代码已经遵循了黑色定义的规则,所以没有变化?是的,我已经有了路径。它已经有了这些设置是的。主要是指向黑色的路径存在,是poetry安装
bin
的地方,并且启用了黑色格式化程序。不要忘记卸载所有其他格式化程序。请查看此答复并重试:[安装anaconda3后黑色格式化程序在VSCode中不起作用]()。