大佬们, 请教一个问题: cannot import XXX

2019-02-01 09:54:25 +08:00
 foxyier

导入自己写的模块的时候,发生不能导入的情况, 像这样: from send_email import SendMail ImportError: cannot import name 'SendMail'

用 pycharm 是可以点进去的, 请教排查思路

2526 次点击
所在节点    Python
8 条回复
princelai
2019-02-01 09:58:35 +08:00
请列出目录结构,PATHONPATH 然后再说
foxyier
2019-02-01 10:02:40 +08:00
@princelai 执行文件和 send_email.py 文件是同一级, 我尝试 from src.libs.send_email import SendMail 也不行。
python35
2019-02-01 10:02:53 +08:00
export PYTHONPATH=xxx
arrow8899
2019-02-01 10:04:35 +08:00
循环引用了
13817188741
2019-02-01 10:06:45 +08:00
把文件结构列一下看看,另外是不是试试 from .send_email import SendMail
如果是在同级目录的话.
princelai
2019-02-01 10:07:10 +08:00
首先尝试相对引用
from .send_email import SendMail

不行的话在每个目录加上__init__.py 文件再试

如果还不行那就试试
sys.path.append(“.”)


如果还不行我怀疑你安了假 python
foxyier
2019-02-01 10:12:06 +08:00
@princelai
@13817188741
@arrow8899
@python35 多谢, 找到原因了。。确实是循环引用了。。还是第一次遇到这个坑。
Faiz555
2019-02-01 10:35:14 +08:00
可能是循环引用,可以在具体方法里面引用从而避免

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/532344

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX