我可以对for循环定义(Python)中的变量应用函数吗

2024-04-19 21:54:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python 3.2解析电子邮件。

我有一个列表中的每个电子邮件文件。我想把邮件分为邮件头列表和邮件正文列表。你知道吗

你觉得这个方法怎么样?你知道吗

def decap(self):
    # separate headers from bodies

    self.heads = []; self.bodies = []

    for email.readlines() in self.inbox.dex:                                                                                                                                     
        """The first 20 lines appended to the heads list"""
        self.heads.append(email[:10])
        """Remaining lines appended to the bodies list"""
        self.bodies.append(email[10:])

self.inbox.dex是文件对象的列表


Tags: 文件thetoself列表电子邮件email邮件
1条回答
网友
1楼 · 发布于 2024-04-19 21:54:47

你差点就到了

...
for email in self.inbox.dex:
    email = email.readlines()
    ...

此外,您还可以使用列表理解(更紧凑):

data = ((email[:10], email[10:]) for email in 
        (x.readlines() for x in self.inbox.dex))
self.heads, self.bodies = zip(*data)

相关问题 更多 >