gpt4 book ai didi

python - 根据逐条语句还是作为 block 运行代码,我怎么可能得到不同的结果?

转载 作者:太空宇宙 更新时间:2023-11-04 00:03:15 24 4
gpt4 key购买 nike

如果符合条件,我有一个发送电子邮件的代码:

import datetime
import smtplib

today = datetime.date.today()
email_date = today
items = [1, 2]
gmail_email = "put_your_email_here"
password = "put your password here"

if email_date == today:
# send email
sent_from = gmail_email
sent_to = ['email_1', 'email_2']
sent_subject = 'Subject of the email'
sent_body = ("""Hello,

This is part of a reproducible code

Kind regards""")

email_text = """\
From: %s
To: %s
Subject: %s

%s
""" % (sent_from, ', '.join(sent_to), sent_subject, sent_body)

server = smtplib.SMTP_SSL('smtp.gmail.com', 465)
server.ehlo()
server.login(gmail_email, password)
server.sendmail(sent_from, sent_to, email_text)
server.close()

但是,如果我运行整个代码,发送的电子邮件主题和正文都是空的,所有内容都放在电子邮件的“发件人”中。

如果我逐个语句运行(在条件之后开始),我会正确收到电子邮件。我在这里缺少什么?

最佳答案

这可能与您将文本 block 分配给 email_text 变量的方式有关。文本是缩进的,而电子邮件应该在行的开头有标题字段。尝试将其更改为:

        email_text = """\
From: %s
To: %s
Subject: %s

%s
""" %(sent_from, ', '.join(sent_to), sent_subject, sent_body)

关于python - 根据逐条语句还是作为 block 运行代码,我怎么可能得到不同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55046952/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com