Skip to content

Commit f965605

Browse files
committed
modify
1 parent c27c848 commit f965605

2 files changed

Lines changed: 10 additions & 2 deletions

File tree

03.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
所需要安装的东西,都在这个页面里面:[www.python.org/downloads/](http://www.python.org/downloads)
2424

25-
>www.python.org是Python的官方网站,如果你的英语足够使用,那么自己在这里阅读,可以获得非常多的收获。
25+
>www.python.org 是Python的官方网站,如果你的英语足够使用,那么自己在这里阅读,可以获得非常多的收获。
2626
2727
在Python的下载页面里面,显示出Python目前有两大类,一类是Python3.x.x,另外一类是Python2.7.x。可以说,Python3是未来,它比Python2.7有进步。但是,现在,还有很多东西没有完全兼容Python3。更何况,如果学了Python2.7,对于Python3,也只是某些地方的小变化了。
2828

235.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ Python中的这个模块使上下文管理中非常好用的东东,这也是
235235
nested的汉语意思是“嵌套的,内装的”,从字面上读者也可能理解了,这个方法跟嵌套有关。前面有一个示例,是从一个文件读取,然后写入到另外一个文件。我不知道读者是否想过可以这么写:
236236

237237
with open("23501.txt") as read_file:
238-
open("23503.txt", "w") as write_file:
238+
with open("23503.txt", "w") as write_file:
239239
for line in read_file.readlines():
240240
write_file.write(line)
241241

@@ -245,4 +245,12 @@ nested的汉语意思是“嵌套的,内装的”,从字面上读者也可
245245
for line in read_file.readlines():
246246
write_file.write(line)
247247

248+
这是一种不错的写法,当然,在本节最前面所用到的写法,也是可以的,只要不用刚才那种嵌套。
249+
250+
###contextlib.contextmanager
251+
252+
contextlib.contextmanager是一个装饰器,它作用于生成器函数(也就是带有yield的函数),一单生成器函数被装饰以后,就返回一个上下文管理器,即contextlib.contextmanager因为装饰了一个生成器函数而产生了`__enter__()``__exit__()`方法。例如:
253+
254+
特别要提醒,被装饰的生成器函数只能产生一个值,否则就会抛出RuntimeError异常;如果有as子句,则所产生的值,会通过as子句赋给某个变量,就如同前面那样。
255+
248256

0 commit comments

Comments
 (0)