【发布时间】:2013-05-29 08:49:27
【问题描述】:
自从我发现imaplib 不支持超时后,我尝试覆盖open() 函数。但没有成功。我真的不知道我应该继承什么(imaplib 或imaplib.IMAP4),因为模块也有不包含在类中的代码。
这是我想要的:
# Old
def open(self, host = '', port = IMAP4_PORT):
self.sock = socket.create_connection((host, port))
[...]
# New, what I want to have
def open(self, host = '', port = IMAP4_port, timeout = 5):
self.sock = socket.create_connection((host, port), timeout)
[...]
我只是复制了原始的库并对其进行了更改,它起作用了,但我认为这不是应该做的事情。
有人可以告诉我一个优雅的方法来解决这个问题吗?
提前致谢!
【问题讨论】: