当前位置: 代码迷 >> python >> email.getaddresses() 的输出不符合预期
  详细解决方案

email.getaddresses() 的输出不符合预期

热度:113   发布时间:2023-07-16 09:46:04.0

根据关于email.getaddresses()模块的文档,我希望getaddresses('"John Doe" <johndoe@mail.com>')返回:

[('John Doe', 'johndoe@mail.com')]

但它返回的内容(在 Python 3.3 下)是:

[('', ', J, o, h, n, , D, o, e, '), ('', ''), ('', ''), ('', 'j'), ('', 'o'), ('', 'h'), ('', 'n'), ('', 'd'), ('', 'o'), ('', '电子邮件'), ( '', '.'), ('', 'c'), ('', 'o'), ('', 'm'), ('', '')]

这比最有用的要少一些。

是什么赋予了?

根据,参数应该是一个头字段值序列,而不是单个字符串。

>>> import email.utils
>>> email.utils.getaddresses(['"John Doe" <johndoe@mail.com>'])
[('John Doe', 'johndoe@mail.com')]
  相关解决方案