Скрипт отправляет пустое значение переменной на E-mail

Есть скрипт, который отправляет не пустую переменную только в случае except, а если файл нормально читается, то текст файла записывается в переменную, но сообщение приходит пустое.

import smtplib

try:
    f = open("statistic.txt")
    g = f.read()
    f.close()
    g1 = str(g)
except Exception:
    g1 = "Error File!!!"
finally:
    server = smtplib.SMTP('smtp.gmail.com: 587')
    server.starttls()
    server.login('[email protected]', '23hdfskjdfui43hj')
    server.sendmail('[email protected]', '[email protected]', g1)
    print(g1)
    server.close()

Результат:

C:\Users\46456\AppData\Local\Programs\Python\Python37\python.exe F:/GD/dev_ri/statistic.py Iteration: 8 Process finished with exit code 0

Хотя есть похожий скрипт, который полностью отрабатывает алгоритм:

import datetime
import platform
import smtplib

now = datetime.datetime.now()

os = platform.platform()
pr = platform.processor()

nd = now.year, now.month, now.day, now.hour, now.minute
nds = str(nd)

print(nds)
print(os)
print(pr)

s = nds + '\n' + os + '\n' + pr + '\n' + 'r_s'

server = smtplib.SMTP('smtp.gmail.com: 587')
server.starttls()
server.login('[email protected]', '23hdfskjdfui43hj')
server.sendmail('[email protected]', '[email protected]', s)

Ответы (0 шт):