Python Tkinter f 字符串到变量

问题描述 投票:0回答:1

如何将最终用户的电子邮件内容放入 Python 中的 f 字符串?我们应该在这里插入什么

st.insert(INSERT, "...")
,以便 mail.Body # (1) 获得 s
t
变量并像 mail.Body # (2) 一样工作?如果我没有清楚地解释我的问题,我很抱歉。这是我用 Python 提出的第一个问题。

st = ScrolledText(window)
st.insert(INSERT, "...")
st.grid(row=6, column=1, columnspan=2, pady=5, padx=20, ipadx=50)

def SendEmail():
    # Load email info into dataframe
    try:
        email_info = pd.read_excel(email_file_path)
        outlook = win32.Dispatch('outlook.application')
        for index, row in email_info.iterrows():
            mail = outlook.CreateItem(0)
            mail.To = row["Email"]
            mail.CC = row["CC"]
            mail.Subject = f"OOReport for: {row['Vendor']}"
            mail.Body = st.get(1.0, END)  # (1)
            mail.Body = f"""Hi {row['First Name']}  # (2)

            Please find the attached report for {row['Vendor']}.

            Thanks,
            xxxxxxx
            xxxxxxxx
            yuyyyyyyy
            zzzzzz

            """
     
    except Exception as e:
         messagebox.showerror('Python Error', e)
python python-3.x tkinter tkinter-entry
1个回答
0
投票

我找到了解决方案。

st.insert(INSERT, """f\"""Hi {row['First Name']}

Please find the attached report for {row['Vendor']}.

Best regards,
xxxxxxx
yuyyyyyyy
zzzzzz
\"""
        
""")

mail.Body = eval(st.get(1.0, END))
© www.soinside.com 2019 - 2024. All rights reserved.