新聞中心
Django 依然是 Python 開(kāi)發(fā)者值得信賴(lài)的庫(kù)。然而,在 2016 年幾個(gè)還不太知名的庫(kù)引起了 Python 開(kāi)發(fā)者的關(guān)注。在這篇博文中,我向大家揭示 7 個(gè) Python 類(lèi)庫(kù),其中不包括像 Django,F(xiàn)lask 等已廣為熟知的庫(kù),這些類(lèi)庫(kù)在 2017 年可能值得 Python 開(kāi)發(fā)者參考。

成都創(chuàng)新互聯(lián)專(zhuān)業(yè)為企業(yè)提供井岡山網(wǎng)站建設(shè)、井岡山做網(wǎng)站、井岡山網(wǎng)站設(shè)計(jì)、井岡山網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、井岡山企業(yè)網(wǎng)站模板建站服務(wù),十年井岡山做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
#1 Arrow
移動(dòng)應(yīng)用程序無(wú)處不在,而且全球人類(lèi)都參與其中 – 無(wú)論是游戲,社交媒體,健康監(jiān)控或其他。然而, Python 的標(biāo)準(zhǔn)數(shù)據(jù)/時(shí)間庫(kù)的問(wèn)題讓它很難滿(mǎn)足現(xiàn)代應(yīng)用的需求,這些應(yīng)用的目標(biāo)受眾生活在不同的地區(qū)和國(guó)家。Arrow 就是克服這個(gè)問(wèn)題的類(lèi)庫(kù)之一。它擁有簡(jiǎn)化創(chuàng)建,格式化,操作和轉(zhuǎn)換數(shù)據(jù),以及時(shí)間和時(shí)間戳的功能。
該庫(kù)解決了 Python 2 或 3 的支持 datetime 類(lèi)型的需求。使用 Arrow,開(kāi)發(fā)人員可以輕松地將一個(gè)時(shí)區(qū)轉(zhuǎn)換為另一個(gè)時(shí)區(qū)。此外,Arrow 的日期,時(shí)間和日歷模塊打開(kāi)了一站式服務(wù)的國(guó)際化應(yīng)用程序的大門(mén)。
#2 TensorFlow
2015 年 11 月由 Google 推出的 TensorFlow 是一個(gè)用于數(shù)值計(jì)算的開(kāi)源軟件庫(kù)。 自 TensorFlow 的推出才過(guò)去一年多的時(shí)間,但是這個(gè)庫(kù)已經(jīng)在 Python 開(kāi)發(fā)人員中獲得了相當(dāng)大的人氣。 事實(shí)上, TensorFlow 是最時(shí)髦 GitHub Python 資源庫(kù)之一。
該庫(kù)可以在桌面,服務(wù)器或移動(dòng)設(shè)備中通過(guò)單個(gè) API 使用運(yùn)行在 GPU 和 CPUs 上的數(shù)據(jù)流圖能力。 TensorFlow 最初由 Google 機(jī)器智能研究機(jī)構(gòu)的研究人員和工程師開(kāi)發(fā),用于機(jī)器學(xué)習(xí)和深度神經(jīng)網(wǎng)絡(luò)研究。 雖然 TensorFlow 在機(jī)器學(xué)習(xí)社區(qū)中掀起了一些小的波瀾,但它已經(jīng)被證明非常適合生產(chǎn)應(yīng)用程序。
#3 Zappa
最開(kāi)始的時(shí)候是由 AWS Lambda 帶來(lái)了無(wú)服務(wù)架構(gòu)。而 Zappa 則被認(rèn)為是改進(jìn)了的 Python web 應(yīng)用部署的程序。 Rich Jones 是 Zappa 的主要作者,并且是 Gun.io 的 CTO,他在一次采訪(fǎng)中說(shuō)道:“我相信無(wú)服務(wù)架構(gòu)(這意味著,系統(tǒng)沒(méi)有任何***基礎(chǔ)設(shè)施)是網(wǎng)絡(luò)應(yīng)用的未來(lái)”。
至于 Zappa,它讓所有 Python WSGI 的應(yīng)用在 AWS Lambda + API 網(wǎng)關(guān)上的部署變得輕而易舉。在 VPS 服務(wù)(類(lèi)似 Linode,PaaS服務(wù)的 Heroku )上擺脫依賴(lài)庫(kù)需要花費(fèi)成百上千的美元。簡(jiǎn)單來(lái)說(shuō),我們可以說(shuō) Zaapa 允許在云上以微服務(wù)部署,不會(huì)有任何與服務(wù)器管理相關(guān)的麻煩事。Zappa 同樣也是很快的,可擴(kuò)展的。
#4 Peewee
Peewee 是 Python 生態(tài)中簡(jiǎn)單的,富有表現(xiàn)力的 ORM ,它支持 SQLite,MySQL 和 PostgreSQL。數(shù)據(jù)庫(kù)經(jīng)常需要為應(yīng)用去使用擴(kuò)展的數(shù)據(jù)。不過(guò),通過(guò) ad hoc 連接串去 get 和 set 數(shù)據(jù)庫(kù)中的數(shù)據(jù)是一項(xiàng)非常有挑戰(zhàn)的任務(wù)。這種情況下,Peewee 就可以幫很大的忙了。這個(gè)庫(kù)對(duì)于開(kāi)發(fā)者和數(shù)據(jù)庫(kù)工程師都是安全的,使用它可以以程序化的 Python 類(lèi)來(lái)直觀(guān)地使用數(shù)據(jù)庫(kù)資源。
開(kāi)發(fā)者們以前用 SQLAlchemy 已經(jīng)創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù),應(yīng)該會(huì)覺(jué)得使用 Peewee 創(chuàng)建數(shù)據(jù)庫(kù)是更容易的。另外,Peewee 一直以來(lái)都適用于 Flask web 框架。
點(diǎn)擊這里學(xué)習(xí)如何在 Peewee 中創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)
#5 Sanic + uvloop
Sanic 是一個(gè)與 Flask 類(lèi)似,基于 uvloop 的 web 框架,它能讓 Python 更快速。Sanik,是基于 Python 3.5 設(shè)計(jì)的,它允許開(kāi)發(fā)者在 async/await 語(yǔ)法上建立定義異步函數(shù)。在 Sanic 之前,Python 沒(méi)有辦法做到如此之快。uvloop 服務(wù)作為一個(gè)極其快速的庫(kù),順其自然地替代了異步默認(rèn)事件的循環(huán)。
Sanik 使得開(kāi)發(fā)者能夠在 Python 中編寫(xiě)異步應(yīng)用,在這種方式下非常類(lèi)似于 Node.js。但是通過(guò) Sanic 作者的基準(zhǔn)測(cè)試,uvloop 在處理超過(guò)每秒33k次請(qǐng)求時(shí),依然表現(xiàn)良好,這超過(guò)了 Node.js 的性能。由于 Sanic 還很新,因此在不久的將來(lái)會(huì)有更多的改進(jìn)和變更。你也可以到它的 開(kāi)源庫(kù)中 做出貢獻(xiàn)。
# 6 Bokeh
你可能知道 Python 在數(shù)據(jù)可視化方面的一些類(lèi)庫(kù),比如 matplotlib 和 seaborn。然而,Bokeh 是一個(gè)專(zhuān)門(mén)設(shè)計(jì)可視化交互并用于現(xiàn)代的 Web 瀏覽器的展示。開(kāi)發(fā)者可以利用 Bokeh 以類(lèi)似于 D3.js 的方式創(chuàng)建***的可視媒體。除此之外,你可以利用非常大的或者流式的數(shù)據(jù)集來(lái)擴(kuò)展更強(qiáng)的表現(xiàn)交互的能力。
你可以通過(guò) Bokeh 創(chuàng)建可視化端點(diǎn),儀表盤(pán)和數(shù)據(jù)應(yīng)用。開(kāi)發(fā)者也可以利用 Bokeh 處理通過(guò)其他類(lèi)庫(kù),比如 Matplotlib, Seaborn 和 ggplot 創(chuàng)建的可視化圖形。Bokeh 也可以和 Jupyter Notebooks 很好的結(jié)合來(lái)用于研究領(lǐng)域。
#7 Blaze
Blaze 用于處理數(shù)據(jù)庫(kù)和分析查詢(xún)的陣列技術(shù)。當(dāng)對(duì)一個(gè)大到我們的電腦內(nèi)存不能存儲(chǔ)的數(shù)據(jù)集進(jìn)行分析時(shí),NumPy 和 Pandas 往往不能派上用場(chǎng)。這時(shí)開(kāi)發(fā)者經(jīng)常求助于 PostgreSQL,MongoDB,Hadoop,Spark 和磁盤(pán)外存儲(chǔ)系統(tǒng)(PyTables and BColz)等等。
然而,理解每一個(gè)系統(tǒng)如何工作以及如何將數(shù)據(jù)整理成合適的形式是一個(gè)非常有挑戰(zhàn)性的工作。由于缺乏對(duì)于如何在新技術(shù)之間混合和遷移數(shù)據(jù)的認(rèn)識(shí),從數(shù)據(jù)分析中攫取有效的結(jié)論將是非常困難的。Blaze 通過(guò)提供一個(gè)對(duì)不同種類(lèi)數(shù)據(jù)庫(kù)技術(shù)統(tǒng)一的接口以及遷移數(shù)據(jù)抽象化處理來(lái)解決這個(gè)難題。Blaze 對(duì)于表達(dá)計(jì)算是一個(gè)好的選擇。
盡管存在一些其他的不太知名但是有效的 Python 類(lèi)庫(kù),如 Gym + Universe,Boto3,Hug,Scrapy,Beautiful Soup等等。我只能選擇這幾個(gè)以便這篇博客有一個(gè)結(jié)尾。Python 開(kāi)發(fā)者可以研究這些類(lèi)庫(kù)看看是否符合他們的需要,再合理的選擇合適的類(lèi)庫(kù)。
文章名稱(chēng):Python開(kāi)發(fā)者2017應(yīng)該關(guān)注的7個(gè)類(lèi)庫(kù)
轉(zhuǎn)載來(lái)于:http://www.5511xx.com/article/djceich.html


咨詢(xún)
建站咨詢(xún)
