有没有办法在 VS Code 中删除未使用的 Python 导入?

新手上路,请多包涵

我真的很想知道 Visual Studio Code 中是否有一些扩展或其他方法可以帮助识别和删除任何未使用的导入。

我有相当多的这样的导入,它已经接近 40 行了。我知道其中一些没有被使用,问题是安全地移除它们。

 from django.core.mail import EmailMultiAlternatives, send_mail
from django.template.loader import render_to_string
from django.utils.html import strip_tags
from rest_framework import routers, serializers, viewsets, status
from rest_framework.views import APIView
from rest_framework.response import Response
from django.contrib.auth.models import User

原文由 Reez0 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.4k
2 个回答

转到 用户设置 json 文件并添加以下内容:

 "python.linting.pylintEnabled": true,
"python.linting.pylintArgs": [
    "--enable=W0614"
]

这应该自动删除未使用的 python 导入。

更多建议在这里: How can I check for unused import in many Python files?

原文由 sinapan 发布,翻译遵循 CC BY-SA 4.0 许可协议

有趣的是,接受的答案没有解决这个问题 - 如何 删除 未使用的导入。

Pylint 不修改代码,它执行 linting。

不可否认, 还没有找到一个很好的 python 解决方案,但这是我所看到的:

1.

正如 这个答案 中所指出的,VSCode 有一个基本的内置选项来自动组织导入,对我来说效果不佳 - 你的里程可能会有所不同:

对于 Mac, 选项 + Shift + O

Alt + Shift + O

如果这对你有用,你也可以使用以下方法在 VSCodes 设置中保存:

 "editor.codeActionsOnSave": {
  "source.organizeImports": true
}

2.

一个叫做 autoflake 的模块可以做到这一点,例如:

 autoflake --in-place --remove-unused-variables example.py

但同样,里程可能会有所不同..

笔记

在 vscode github 中看到一个问题, 指出“快速修复”功能已损坏,而 vscode 团队表示这是 vscode python 插件的问题。可能很快就会修复……?

原文由 danwild 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题