Why am I getting the error: No module named 'email.MIMEMultipart'?
from email.MIMEMultipart import MIMEMultipart
Is the correct import for Python 2.x.
According to the Python 3 examples in the documentation (email), you need:
from email.mime.multipart import MIMEMultipart
Admin
Updated on August 28, 2021Comments
-
Admin over 2 years
I'm trying to experiment with simple code to send an email from a Python script. I keep getting an error that the module 'email.MIMEMultipart' does not exist. To simplify the question/answer process, I can narrow it down even further. From the Python environment prompt I can enter
>>>import email
>>> dir(email)
It will list a bunch of modules in the email module, but none of the MIME modules are there. I can see them from WindowsExplorer in the same lib folder as all the other modules. After searching other questions I did see that I had named my test program 'email.py' which I see now is a big no-no. I deleted it and verified there isn't also an 'email.pyc'.
I'm using Windows 10, Python 3.5.2. I've also already reinstalled Python with no improvement.
Can anyone tell me what else I should check? This is the actual code:
import smtplib from email.MIMEMultipart import MIMEMultipart
-
x squared over 6 yearsI was the one tagging it Python 3 and felt that it doesn’t hurt to know that the code OP possibly found somewhere looks like it does, because it is meant for Python 2. It didn’t mean to be smug, no bad feelings here.
-
x squared over 6 yearsIf you don’t like it, I can put it in a comment instead.