python語法

1. with用法

  • 要使用with語句,首先要弄明白上下文管理器的概念,有了上下文管理器,with語句才能正確工作。上下文管理器實現了上下文管理協議,而上下文管理協議規定了所有支持上下文管理器的對象都要實現enter()和exit()藉口。
  • with語法如下:
    with context_expression [ as target(s) ]:
        with-body
  • 這裏的context_expression會返回一個上下文管理對象,該對象並不賦值給as子句中的target(s),如果制定了as語句的話,會將上下文管理器的enter()方法的返回值賦值給target(s)。
    with open("testFile.txt") as f:
        buf = f.read()
    print buf   //使用with之後就不需要顯式執行文件關閉操作了,with執行完成後會自動關閉文件。
  • 此語句在with語句結束之後會自動執行文件的關閉操作。不管在處理文件過程中是否發生了異常,都能保證with語句執行完畢後關閉打開的文件句柄。此with語句等價於:
        try:
             f = open('testFile.txt')
             buf = f.read()
             print buf
        finally:
              f.close()   //中會執行到此,關閉文件句柄。

2. yield 生成器(generator)

https://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章