Python 目录列表没有';不要断线

Python 目录列表没有';不要断线,python,list,Python,List,这个脚本列出了目录的内容和电子邮件列表到我的个人电子邮件。这一切都很好,但问题是它填充了一堵巨大的文本墙,而不是像它应该的那样在每个文件列表中换行。我做错了什么 import os import smtplib import platform from datetime import datetime def creation_date(path_to_file): if platform.system() == 'Windows': files = os.listd

这个脚本列出了目录的内容和电子邮件列表到我的个人电子邮件。这一切都很好,但问题是它填充了一堵巨大的文本墙,而不是像它应该的那样在每个文件列表中换行。我做错了什么

import os
import smtplib
import platform
from datetime import datetime

def creation_date(path_to_file):

    if platform.system() == 'Windows':
        files = os.listdir(path_to_file)
        filelist=""
        for file in files:
            filecreatedate = datetime.fromtimestamp(os.path.getctime(path_to_file + "\\" + file))
            fileinfo="Creation date of {}: {}".format(file, filecreatedate)
            print("Creation date of {}: {}".format(file, filecreatedate))
            filelist=filelist + fileinfo + "\n"
        return filelist
        # return os.path.getctime(path_to_file)
    else:
        stat = os.stat(path_to_file)
        try:
            return stat.st_birthtime
        except AttributeError:

            return stat.st_mtime

def mailsection(filelist):
    smtpObj = smtplib.SMTP('smtp.gmail.com', 587)
    smtpObj.ehlo()
    (250, b'mx.example.com at your service, [216.172.148.131]\nSIZE 35882577\
    n8BITMIME\nSTARTTLS\nENHANCEDSTATUSCODES\nCHUNKING')
    smtpObj.starttls()
    (220, b'2.0.0 Ready to start TLS')
    smtpObj.login('********', '*********')
    (235, b'2.7.0 Accepted')
    message="Subject:currentfiles\n" + filelist
    smtpObj.sendmail('********', '********', message)
    {}
    smtpObj.quit()
    (221, b'2.0.0 closing connection ko10sm23097611pbd.52 - gsmtp')

    mailsection(creation_date("C:\\Users\\asher.vast\\Desktop\\Py\\Projects\\Time Tracker\\ExampleDir"))

我的一个同事朋友帮我解决了这个问题。我们最终使用了允许换行的“Email Message类”

message = EmailMessage()
    message["Subject"] = "Current Files"
    message["From"] = "John Doe <*************@gmail.com>"
    message["To"] = "Recipient X <*************.com>"
    message.set_content(filelist, subtype="html")
    ####message="Subject:currentfiles\r\n" + filelist
    smtpObj.send_message(message)
message=EmailMessage()
消息[“主题”]=“当前文件”
消息[“来自”]=“John Doe”
邮件[“收件人”]=“收件人X”
message.set_内容(文件列表,subtype=“html”)
####message=“Subject:currentfiles\r\n”+文件列表
smtpObj.发送消息(消息)

电子邮件可能被解释为HTML,断行被忽略。尝试将
\n
替换为