gpt4 book ai didi

python - 删除了 __pycache__ 和 __init__.py

转载 作者:行者123 更新时间:2023-11-30 23:31:27 27 4
gpt4 key购买 nike

  • Django 1.6
  • Ubuntu 12.04
  • Python 3.2.3

意外删除了 Django 应用的 __pycache__ 文件夹及其 __init__.py 文件,导致 Django 崩溃。当我python3 manage.py runserver时,它会立即声称没有名为agepct的模块,即使应用程序的目录存在并且所有文件都在其中(除了我删掉了)。我清空了垃圾箱,所以无法取回文件。除了从头开始重新创建整个应用程序之外,有什么方法可以让应用程序再次运行吗?

这是当我尝试运行服务器时它吐出的回溯:

Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/usr/local/lib/python3.2/dist-packages/django/core/management/__init__.py", line 399, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.2/dist-packages/django/core/management/__init__.py", line 392, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.2/dist-packages/django/core/management/base.py", line 242, in run_from_argv
self.execute(*args, **options.__dict__)
File "/usr/local/lib/python3.2/dist-packages/django/core/management/base.py", line 280, in execute
translation.activate('en-us')
File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/__init__.py", line 130, in activate
return _trans.activate(language)
File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/trans_real.py", line 188, in activate
_active.value = translation(language)
File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/trans_real.py", line 177, in translation
default_translation = _fetch(settings.LANGUAGE_CODE)
File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/trans_real.py", line 159, in _fetch
app = import_module(appname)
File "/usr/lib/python3.2/importlib/__init__.py", line 124, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/usr/lib/python3.2/importlib/_bootstrap.py", line 824, in _gcd_import
raise ImportError(_ERR_MSG.format(name))
ImportError: No module named agepct

最佳答案

__pycache__ 目录是字节编译文件的缓存,导入包时将重新构建。

另一方面,__init__.py 文件使目录成为模块。如果它最初是空的,只需在 agepct 目录中重新创建它,导入即可再次工作。请注意,__init__.py不会位于__pycache__目录中。

如果 __init__.py 不仅仅是一个空的“使其成为一个包”文件,那么您必须从头开始重新创建该代码或从备份恢复该文件。

关于python - 删除了 __pycache__ 和 __init__.py,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19916640/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com