Python 3.4.0進(jìn)入beta測(cè)試,帶來大量新模塊
譯文統(tǒng)計(jì)模塊、異步I/O、內(nèi)存分配跟蹤以及更出色的散列算法一應(yīng)俱全,不過這些更新帶來的適應(yīng)難度也相當(dāng)可觀。
Python版本3剛剛公布了其最新beta測(cè)試版本,即3.4.0。
作為最初公布于2013年8月的alpha 1版本,Python 3.4承諾將來大量后續(xù)版本,其中大部分都以新模塊的形式出現(xiàn),旨在為該語言添加更多核心功能。其中包括:
pathlib:一套面向?qū)ο髱?,用于訪問本地文件系統(tǒng)。目前已經(jīng)有幾種第三方模塊提供類似的功能,而且之前之前將該功能添加到Python庫中的嘗試受到“拒絕”?,F(xiàn)在情況終于發(fā)生變化,作為派生自現(xiàn)有第三方模塊的新機(jī)制,pathlib以官方姿態(tài)正式將這一功能添加到Python當(dāng)中。其設(shè)計(jì)目的在于通過先前受到拒絕或者未能和生效的模塊中了解錯(cuò)誤原因。
enum:一種為Python提供標(biāo)準(zhǔn)枚舉類型的方式。枚舉使開發(fā)人員得以選擇一組名稱并將其與常量值加以綁定,例如星期幾或者給定函數(shù)狀態(tài)。同樣,Python之前就已經(jīng)能夠?qū)崿F(xiàn)這類效果(例如flufl.enum),但這些方式都不屬于官方標(biāo)準(zhǔn)。
statistics: Python目前已經(jīng)被越來越多地被數(shù)學(xué)家及數(shù)據(jù)科學(xué)家用于數(shù)據(jù)處理任務(wù)。這套標(biāo)準(zhǔn)狀態(tài)模塊的出現(xiàn)似乎來得太遲了些。
asyncio:顧名思義,這是一個(gè)用于處理異步I/O的模塊,其中一部分思路借用自現(xiàn)有Twisted與yield from模塊。
此外,即將到來的模塊標(biāo)準(zhǔn)方式能夠?qū)etadata直接提供給Python而無需提前進(jìn)行導(dǎo)入,更出色的散列算法能夠避免針對(duì)Python程序的散列沖突攻擊。另外還有大量其它更新內(nèi)容。
遺憾的是,3.4版本所帶來的變化仍然沒能緩和大部分使用者在與Python打交道時(shí)所遇到的最大問題:該語言仍然只有兩處主要fork,即2.x與3.x版本。使用2.x的開發(fā)人員通常無法順暢升級(jí)到3.x,這也是目前受到抱怨與指責(zé)最多的狀況。誠然,很多主流Python框架(例如Django)已經(jīng)可以與3.x版本兼容,但對(duì)于在Python 2.x身上投入大量成本的使用者來說,完全過渡仍然是個(gè)艱難而緩慢的過程。
3.4主版本預(yù)計(jì)將于明年2月23號(hào)正式推出,在此之間我們還將迎來另一個(gè)beta測(cè)試版及兩個(gè)候選版本。
原文鏈接:http://www.infoworld.com/t/python/python-340-goes-beta-slew-of-new-modules-231541