emp*_*les 5 python python-2.7 14.10
有没有办法在 Nautilus 的目录结构下禁用它们?我的 Django 项目对它们很困惑。
对于 Django,最快的方法可能是首先停止生成它们。
现在,这听起来可能是个糟糕的主意......字节码预编译是让 Python 如此快速的原因,所以它绝对是您在生产中想要的东西,但我们可以仅对运行的东西禁用字节码生成manage.py
。
打开它并添加sys.dont_write_bytecode = True
一行。它应该是这样的:
#!/usr/bin/env python
import os
import sys
sys.dont_write_bytecode = True
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ap.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
Run Code Online (Sandbox Code Playgroud)
警告: ap.settings
特定于我的项目,而不是您的,并且文件的布局可能与您的 Django 版本不同......如果您复制整个内容,请小心!
生产使用(如通过 wsgi 服务器)应该跳过manage.py
并仍然生成字节码文件,但在开发中 - 你更有可能使用./manage.py runserver
- 应该保持干净。
不过,这会稍微减慢速度。
哦,要清理:
# Python 2
find /path/to/project -name '*.pyc' -type f -delete
# Python 3
find /path/to/project -name '__pycache__' -exec rm -rf {} +
Run Code Online (Sandbox Code Playgroud)
请注意,这两个语句都删除文件,因此您可能需要在运行此热之前检查它们(删除-delete
or-exec ...
语句)。他们只会向您显示匹配的文件。