猿问

我应该在urllib.urlopen()之后调用close()吗?

我是Python的新手,正在阅读别人的代码:

应该urllib.urlopen()跟着urllib.close()?否则,会泄漏连接,对吗?


饮歌长啸
浏览 1300回答 3
3回答

子衿沉夜

该close方法必须在的结果上调用urllib.urlopen,而不是在urllib您正在考虑的模块本身上调用(如您所提到的urllib.close-不存在)。最好的方法:代替x = urllib.urlopen(u)etc,使用:import contextlibwith contextlib.closing(urllib.urlopen(u)) as x:   ...use x at will here...该with语句和closing上下文管理器将确保即使在出现异常的情况下也能正确关闭。
随时随地看视频慕课网APP

相关分类

Python
我要回答