empedokles Asked: 2015-07-18 00:03:00 +0800 CST2015-07-18 00:03:00 +0800 CST 2015-07-18 00:03:00 +0800 CST 有没有办法在 Nautilus 下不显示 .pyc(Python 字节码)文件? 772 有没有办法在 Nautilus 的目录结构下禁用它们?我的 Django 项目对它们感到很困惑。 python 1 个回答 Voted Best Answer Oli 2015-07-18T00:13:22+08:002015-07-18T00:13:22+08:00 对于 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) 警告: 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 {} + 请注意,这两个语句都会删除文件,因此您可能需要在运行此热之前检查它们(删除-deleteor-exec ...语句)。他们只会告诉你哪些文件匹配。
对于 Django,最快的方法可能是首先停止生成它们。
现在,这听起来可能是个糟糕的主意……字节码预编译使 Python 如此之快,因此它绝对是您在生产中想要的东西,但我们可以仅针对运行的内容禁用字节码生成
manage.py
。打开它并添加
sys.dont_write_bytecode = True
一行。它应该看起来像这样:警告:
ap.settings
特定于我的项目,而不是你的,并且文件的布局可能在你的 Django 版本中不同......如果你复制整个东西要小心!生产用途(比如通过 wsgi 服务器)应该跳过
manage.py
并仍然生成字节码文件,但在开发中——你更有可能使用的地方./manage.py runserver
——应该保持干净。不过,这会稍微减慢速度。
哦,要清理:
请注意,这两个语句都会删除文件,因此您可能需要在运行此热之前检查它们(删除
-delete
or-exec ...
语句)。他们只会告诉你哪些文件匹配。