我记得当我用C++或Java开发时,编译器通常会抱怨未使用的方法,函数或导入.在我的Django项目中,我有一堆Python文件经过了多次迭代.其中一些文件在页面顶部有几行import语句,其中一些导入不再使用.有没有办法找到那些未使用的进口,除了每个文件中的每一个眼球?
我的所有进口都是明确的,我通常不写 from blah import *
Wak*_*eng 17
我用来flake8检查样式,然后isort+autoflake自动删除未使用的导入。
检查:查看更多flake8 vs pyflake
pip install flake8 --user
flake8 .
Run Code Online (Sandbox Code Playgroud)
重新格式化:详细了解为什么使用 isort+autoflake
pip install isort autoflake --user
isort -sl .
autoflake --remove-all-unused-imports -i -r .
isort -m 3 .
Run Code Online (Sandbox Code Playgroud)
最近(自2023年起),我用ruff来代替autoflake/flake8
pip install flake8 --user
flake8 .
Run Code Online (Sandbox Code Playgroud)
您也可以将秃鹫视为多种选择之一。
pip install vulture # from PyPI
Run Code Online (Sandbox Code Playgroud)
vulture myscript.py
Run Code Online (Sandbox Code Playgroud)
对于您项目下的所有 python 文件。
find . -name "*.py" | xargs vulture | grep "unused import"
Run Code Online (Sandbox Code Playgroud)
适用于以下代码。
import numpy as np
import pandas as pd
df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
Run Code Online (Sandbox Code Playgroud)
结果如下。
? vulture myscript.py
myscript.py:1: unused import 'np' (90% confidence)
myscript.py:4: unused variable 'df' (60% confidence)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23447 次 |
| 最近记录: |