清除 Python 项目生成的 __pycache__ 或 pyc 缓存文件
在运行 Python 项目时,如果 Python 版本是 Python 3,会自动生成以 __pycache__
为名称的缓存文件;如果 Python 版本是 Python 2,会自动生成 *.pyc
的缓存文件。
如果项目文件比较多,有时会感觉很乱,这里给出一个脚本,可以递归删除项目中的 __pycache__
目录及其子文件,或者 *.pyc
文件。
对于 Python 3 版本:
"""清除 __pycache__ 缓存"""
import os
import shutil
def purge_cache(path):
# 遍历目录下所有文件
for file_name in os.listdir(path):
abs_path = os.path.join(path, file_name)
if file_name == "__pycache__":
print(abs_path)
# 删除 `__pycache__` 目录及其中的所有文件
shutil.rmtree(abs_path)
elif os.path.isdir(abs_path):
# 递归调用
purge_cache(abs_path)
if __name__ == "__main__":
# 当前文件的绝对路径列表,按当前系统类型路径分隔符分隔
path_list = os.path.dirname(
os.path.abspath(__file__)
).split(os.sep)
# 取当前文件的上上级目录,可根据需要修改
root_dir = os.sep.join(path_list[0:-2:])
# 开始清除
purge_cache(root_dir)
对于 Python 2 版本:
一句 shell 命令即可:
find . -name "*.pyc" -type f -print -exec rm -rf {} \;