Для формата почты Интернета требуется пустая строка в качестве разделителя между заголовками и телом сообщения.Кроме того, маркер конца строки в почтовом сообщении представляет собой пару символов '\r\n'
, а не только один символ '\n'
.Поэтому измените это:
msg = "Subject: "+subject + '\n' + message
на:
msg = "Subject: " + subject + '\r\n' + '\r\n' + message
Первый '\r\n'
отмечает конец строки темы, а второй обеспечивает пустую строку, которая отделяет заголовок от тела.
Кроме того, случайное число на экране, которое отображается после запуска кода, не совпадает при вводе для проверки.
Это потому, что в Python 3 возвращаемое значениепо input()
всегда является строкой.Эта строка:
verify = input("Enter the secure code: ")
устанавливает verify
в строку.Затем эта строка:
if verify == secure_code:
сравнивает строку verify
с числом secure_code
.Строка и число не совпадают, поэтому сравнение всегда дает ложный результат.Чтобы исправить, измените это сравнение на следующее:
if verify == str(secure_code):