【发布时间】:2020-01-29 03:23:46
【问题描述】:
在 ubuntu 服务器上使用 Python 2.7.15+,这是我的代码
piece, messrow = imap.uid('fetch',id,'(RFC822)')
email_message = email.message_from_string(messrow[0][1])
错误
File "/var/www/mail.py", line 91, in <module>
email_message = email.message_from_string(messrow[0][1])
File "/usr/lib/python2.7/email/__init__.py", line 56, in message_from_string
from email.parser import Parser
File "/usr/lib/python2.7/email/parser.py", line 12, in <module>
from email.feedparser import FeedParser
File "/usr/lib/python2.7/email/feedparser.py", line 27, in <module>
from email import message
File "/usr/lib/python2.7/email/message.py", line 16, in <module>
import email.charset
File "/usr/lib/python2.7/email/charset.py", line 13, in <module>
import email.base64mime
File "/usr/lib/python2.7/email/base64mime.py", line 40, in <module>
from email.utils import fix_eols
File "/usr/lib/python2.7/email/utils.py", line 32, in <module>
from email._parseaddr import quote
MemoryError
小消息也会发生这种情况。 机器有4G内存,我知道python除了可用机器内存之外没有内存限制。
有没有办法解决这个问题?
【问题讨论】:
-
请注意,“可用机器内存”与所有其他进程共享,从所有操作系统内容开始。此外,您的系统不一定允许您(或更确切地说是“运行此代码的用户帐户”)使用那么多内存(这可以通过 ulimits 或类似工具来限制)。最后,两行代码并不能很好地说明上下文 - 您可能只是构建了一个巨大的列表或字典或之前已经吃掉所有内存的任何东西。
标签: python python-2.7