Python模組之 __future__

來源:互聯網
上載者:User

今天在學習Python Cookbook的時候,發現一句文法from __future__ import division,很奇怪__future__這個名字,網上搜了一下,原來是很有用的一個模組。

詳細說明見這裡。按照官方的解釋,至少確保在2.1之前版本的Python可以正常運行一些新的語言特性,需要使用語句 'from __future__ import *'。舉例來說:

# Enable nested scopes in Python 2.1
from __future__ import nested_scopes

如果使用這個語句,則該語句必須是模組或程式的第一個語句。此外,'__ future__' 模組中存在的特性最終將成為Python語言標準的一部分。到那時,將不再需要使用 '__future__' 模組。

更多樣本:

1. Python 2.6中也有一個 __future__ import 使得所有的字串文本成為Unicode字串。這就意味著\u逸出序列可以用於包含Unicode字元。

from __future__ import unicode_literals

s = ('\u751f\u3080\u304e\u3000\u751f\u3054'
'\u3081\u3000\u751f\u305f\u307e\u3054')
print len(s) # 12 Unicode characters

2. Python 2.6可以通過 import __future__ 來將print從語言文法中移除,讓你可以使用函數的形式。例如:

from __future__ import print_function
print('# of entries', len(dictionary), file=sys.stderr)

3. 整數除法

python 2.5中:23/6 # 得3
from __future__ import division 之後:
23/6 # 得 3.8333333333333335

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.