溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

使用python中__future__模塊的案例

發(fā)布時(shí)間:2020-11-09 11:02:15 來(lái)源:億速云 閱讀:190 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹了使用python中__future__模塊的案例,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

“__future__”模塊的目的

關(guān)于版本的問(wèn)題,“__future__”目的是把下一個(gè)版本的特性導(dǎo)入到當(dāng)前版本,這樣我們就可以在當(dāng)前版本中測(cè)試一些新版本的特性,從而使得python未來(lái)版本的遷移更加容易。

“__future__”模塊的作用

future 語(yǔ)句是一種針對(duì)編輯器的指令,指明某個(gè)特定模塊應(yīng)當(dāng)使用在某個(gè)python發(fā)行版中成為標(biāo)準(zhǔn)特性的語(yǔ)法或語(yǔ)義。

future語(yǔ)句注意事項(xiàng)

future 語(yǔ)句必須在靠近模塊開頭的位置出現(xiàn)。只有以下內(nèi)容可以放在future語(yǔ)句之前。

1 、模塊的文檔字符串

2 、注釋

3 、空行

4 、其他future語(yǔ)句

關(guān)于__future__使用

(1)python2.1起, 當(dāng)一個(gè)新的語(yǔ)言特性首次出現(xiàn)在發(fā)行版中, 如果該新特性與舊版本python不兼容, 則該特性將會(huì)被默認(rèn)禁止調(diào)用。如果想調(diào)用這個(gè)新特性, 則必須使用 “from __future__ import FeatureName”進(jìn)行導(dǎo)入

(2)future__模塊主要作用是提供某些將要引入的模塊(當(dāng)前版本不存在),而import則是引入已經(jīng)在該版本發(fā)布的模塊。如,python3版本之前print并不是一個(gè)函數(shù)。

print_function = _Feature((2, 6, 0, "alpha", 2),
 (3, 0, 0, "alpha", 0),
 CO_FUTURE_PRINT_FUNCTION)

(3)_future__這個(gè)模塊在2.1版本時(shí)才存在,若在此版本之前導(dǎo)入將產(chǎn)生異常。同時(shí),當(dāng)環(huán)境升級(jí)至以后的某個(gè)版本中,某個(gè)特性已經(jīng)成為標(biāo)準(zhǔn)的一部分,那么使用該特性就不用從__future__導(dǎo)入了。

nested_scopes = _Feature((2, 1, 0, "beta", 1),
 (2, 2, 0, "alpha", 0),
 CO_NESTED)

(4)避免因?yàn)榘姹镜母拢瑢?dǎo)致原有可正常運(yùn)行的代碼,出現(xiàn)異常。比如下面這行代碼在python2.7中可以運(yùn)行,但在python3.0中會(huì)異常。

print ‘xiaowukongqimotuo’

(5)from __future__ import FeatureName 必須在文件的開頭引用,否則會(huì)觸發(fā)SyntaxError異常

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享使用python中__future__模塊的案例內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問(wèn)題就找億速云,詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI