我重命名了一个相当大的项目中的一些文件,并想删除他们留下的.pyc文件。我尝试了bash脚本:

 rm -r *.pyc

但它并没有像我想的那样递归遍历文件夹。我做错了什么?


当前回答

Py3clean适合我!

cd /usr/local/lib/python3.9
sudo py3clean -v .

其他回答

Django扩展

注意:这个答案非常特定于已经使用了Django Extension的Django项目。

python manage.py clean_pyc

实现可以在源代码中查看。

我曾经用过一个别名

$ which pycclean

pycclean is aliased to `find . -name "*.pyc" | xargs -I {} rm -v "{}"'

现在在PyPI上有一个包pyclean,它很容易使用,而且是跨平台的。用户只需要一个简单的命令行来清理当前目录下的所有__pycache__文件:

pyclean .

第一次运行:

find . -type f -name "*.py[c|o]" -exec rm -f {} +

然后添加:

export PYTHONDONTWRITEBYTECODE=1

~ / . profile

如果你不再需要.pyc,你可以在终端中使用这一行:

export PYTHONDONTWRITEBYTECODE=1

如果你改变主意:

unset PYTHONDONTWRITEBYTECODE