enter code here
我有一个包名芹菜和一个文件名芹菜。
当我说导入芹菜时,尝试导入芹菜文件而不是芹菜包。它说它无法导入芹菜
from __future__ import absolute_import
from celery import Celery
celery = Celery('celery_app',
broker='redis://localhost:6379/0',
backend='amqp://',
include=['celery_app.tasks'])
# Optional configuration, see the application user guide.
celery.conf.update(
CELERY_TASK_RESULT_EXPIRES=3600,
)
if __name__ == '__main__':
celery.start()
如下所示。有没有办法解释导入包而不是文件。
修改
尝试
from __future__ import absolute_import
import sys
del sys.path[0]
from celery import Celery
但仍然如此。当我从python shell尝试那些命令时;它没有给出任何错误。 有什么东西我不见了吗?
答案 0 :(得分:1)
当我从python shell尝试这些命令时;它没有给出任何错误。有什么东西我不见了吗?
我真的不推荐它, RENAME 你的文件就像所有人都说的那样,但你可以试试
import sys, os
[sys.path.remove(i) for i in sys.path if i == os.getcwd() or i == '']
from celery import Celery
此外,您正在导入absolute_import
,但您似乎没有使用它(docs)。从本地文件celery.py
from .celery import my_func