You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现多行输入发送邮件仅收到最后一行问题求助

Python多行输入发邮件仅显示最后一行问题修复

根因

你在循环读取多行输入时,已将每一行内容追加到contents列表存储,但最终构造邮件正文时,错误使用了循环结束后最后一次读取的line变量赋值给msg_body,因此仅发送了最后一行内容。

修复代码

只需修改邮件正文赋值的逻辑,将contents列表中的所有行用换行符拼接为完整正文即可,修改对应代码段如下:

# content
sender = ans1
reciever = "rockzombie005@gmail.com"
password = ans0
# 拼接所有输入行作为邮件正文
msg_body = '\n'.join(contents)

可选优化

原代码中密码输入使用普通input会在终端显示输入内容,可引入getpass模块实现隐藏输入:

# 顶部导入模块新增
import getpass

# 替换密码输入行
ans0 = getpass.getpass("Your gmail password(Not shown): ")

内容的提问来源于stack exchange,提问作者RockZombie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 02:06:03