为何要用with as,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄
正常情况下:
In [16]: file=open("c:\\tmp\\1.txt")
In [17]: try:
...: data=file.read()
...: finally:
...: file.close()
...:
In [18]: file.close()
如果使用with as
In [15]: with open("c:\\tmp\\1.txt") as file:
...: print(file.read())
...:
china
usa
再比如:
In [24]: import urllib.request
In [25]: with urllib.request.urlopen('https://www.bing.com/') as f:
...: print(f.read(100).decode('utf-8'))
...:
b'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.
org/TR/xhtml1/DTD/xhtm'