Python future模塊


今天看到了Pyhon中的模塊__future__,查了一下資料,感覺這個module很有用。

從python2.1開始以后, 當一個新的語言特性首次出現在發行版中時候, 如果該新特性與以前舊版本python不兼容, 則該特性將會被默認禁用. 如果想啟用這個新特性, 則必須使用 "from __future__import *" 語句進行導入.

示例:

1. Python 2.7中也有一個 __future__ import 使得所有的字符串文本成為Unicode字符串。這就意味着\u轉義序列可以用於包含Unicode字符。

  1. from __future__ import unicode_literals  
  2. s = ('am I a unicode?')  
  3. print isinstance(s, unicode)

 

2. Python 2.7可以通過 import __future__ 來將2.7版本的print語句移除,讓你可以Python3.x的print()功能函數的形式。例如:

  1. from __future__ import print_function  
  2. print('hello', end='\t'

 

3. 整數除法

  1. python 2.7中:>>>23/6  >>>3  
  2. from __future__ import division 之后:  
  3. >>>23/6   >>> 3.8333333333333335 

 

4. with特性

from __future__ import with_statement

with open('test.txt', 'r') as f:
    for line in f:
        print line

with方式語句可以替換以前try..catch語句, 如果使用try..catch語句則為:
try:
    f = open('test.txt', 'r')
    for line in f:
        print line
finally:
    f.close()
而with代碼塊如果內部出現任何錯誤, 都將會自動調用close方法

 

Python中的__future__模塊還有很多功能,總之很強大

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM