Sending an individual email
The most basic way of sending an email is by using the standard Simple Mail Transfer Protocol (SMTP). SMTP is one of the oldest protocols on the Internet. Although newer proprietary protocols exist, SMTP is the standard used by all email providers to communicate with each other and is one of the pillars of electronic communications.
SMTP allows you to send rich emails with multiple sections containing different kinds of data. These sections can be used to add attachments, or to generate alternative sections, such as a plain text and HTML version of the same message, to display on compatible email clients.
Given SMTP is such a strong standard, it is easy to use, and virtually all languages and operating systems support it. This ease of usage is also a weakness as the amount of spam email is huge, and big players in the email domain have strong incentives to disallow emails coming from non-verified sources, like a Python script.
This is why...