我只是在Raspbian OS下用Python编写这段代码:
import smtplib
from = '****@hotmail.de'
to = '****@hotmail.de'
msg = 'Testmail'
usr = '****@hotmail.de'
psw = '****'
server = smtplib.SMTP('smtp.live.de',25)
server.login (usr,psw)
server.sendmail (from, to, msg)
server.quit()
获取以下错误消息:
Traceback (most recent call last):
File "ail.py", line 1, in <module>
import smtplib
File "/usr/lib/python2.7/smtplib.py", line 46, in <module>
import email.utils
File "/home/pi/email.py", line 6, in <module>
smtp =smtplib.SMTP('smtp.live.com',25)
AttributeError: 'module' object has no attribute 'SMTP'
我的错是什么?有人可以帮帮我吗?
此致
答案 0 :(得分:0)
您的问题是您将脚本命名为email.py
,或者可能是其早期版本。这意味着它会影响标准库email
模块/包。因此,当smtplib
尝试import email
或import email.utils
时,它会获取您的代码而不是它想要的stdlib代码。
解决方案是将您的脚本重命名为不匹配stdlib modules and packages中的任何一个(或者至少不是您直接或间接使用的任何一个)。
如果您已将其重命名为ail.py
(因为回溯似乎暗示)并且仍然会导致问题,请确保删除原始email.py
和任何.pyc / .pyo文件同名。只要它们位于当前工作目录(或sys.path
上的其他位置),它们仍然可以干扰stdlib。