跳转至

尚未翻译

本页面尚未翻译成中文,因此显示英文原文。 帮助翻译

mailbox Module

The mailbox module provides classes for reading, writing, and manipulating various mailbox formats (mbox, Maildir, MMDF, etc.).

Complexity Reference

Operation Time Space Notes
Open mailbox Varies Varies Depends on mailbox format and indexing
Add message Varies Varies Depends on mailbox type and file I/O
Iterate messages O(n) O(1) Sequential access

Working with Mailboxes

Reading Mailbox

import mailbox

# Open mbox - cost depends on format and file size
mbox = mailbox.mbox('mail.mbox')

# Iterate - O(n)
for key, message in mbox.items():
    print(message['Subject'])
    print(message.get_payload())

mbox.close()

Adding Messages

import mailbox
from email.message import EmailMessage

# Open - cost depends on format and file size
mbox = mailbox.mbox('mail.mbox')

# Create message - O(1)
msg = EmailMessage()
msg['Subject'] = 'Test'
msg.set_content('Hello')

# Add - cost depends on mailbox type and I/O
key = mbox.add(msg)

# Flush to disk - cost depends on pending changes
mbox.flush()
mbox.close()