Python 程式員需要會的6個程式庫

來源:互聯網
上載者:User

1.Pyglet

是什麼:Pyglet是一個純Python語言編寫的跨平台架構,用於開發多媒體和視窗特效應用。
為什麼需要它:從頭開發圖形介面應用所需要的功能模組是十分繁瑣的,Pyglet提供了大量現成的模組,省去了很多的時間:視窗函數,OpenGL特效,音頻與視頻回放,鍵鼠處理以及圖片處理。(不過,Pyglet並沒有提供類似按鈕、工具列或菜單等UI組件。)
所有上述模組都是在Windows、OSX或Linux平台下原生實現的,並不依賴外部二進位包;它是純Python語言編寫的。Pyglet通過BSD協議發布,可以用於任何商業和開源項目。如果你想學習python可以來這個群,四七二,三零九,二六一,裡面有大量的學習資料可以下載。
2.Peewee

是什麼:Peewee是一個小型但是十分強大的庫,支援通過ORM的方式訪問資料庫,原生支援SQLite、MySQL和PostgreSQL等資料庫。
為什麼需要它: 任何一個需要經常使用外部資料的應用基本都會用到資料庫,但是通過臨時串連從資料庫中讀寫資料會帶來很多麻煩。
Peewee提供了一條訪問資料庫資源的安全、穩定的通道。對於Python程式員和資料庫工程師來說,該庫所提供的Python類使用起來將會得
心應手。有了Peewee的支援,我們可以快速便捷地訪問資料庫,後續還可以擴充加入更多的選項,不需要重新設計。Peewee同時原生支援資料庫事務
(transaction),並有許多可選的額外模組,提供了從資料庫連接池(connection
pooling)到類似多對多(many-to-many)的進階field類型等功能。
如果你想學習python可以來這個群,四七二,三零九,二六一,裡面有大量的學習資料可以下載。
3.Bottle

是什麼: Bottle是一個小型的輕量網路開發架構,同時速度也很快。
為什麼需要它: 如果你只是想快速建立一個Restful
API介面,或者只想用網路開發架構的做一個簡單的應用,Bottle可以輕鬆地滿足你的要求。它具備了你將需要的所有功能:路由、模板、訪問請求與響應
資料(request and response data)、支援多種網路伺服器以及WebSockets等進階功能。
建立一個應用所需的工作極少,而且Bottle在設計時就考慮了可擴充性,如果需要更多進階功能,隨時就可以接入。
4.Invoke
是什麼:簡單來說,Invoke讓你通過一個Python庫便捷地執行系統管理任務。
為什麼需要它:
誰不想要一個“可以運行shell命令、定義並歸類執行任務的簡潔、進階介面”呢?利用Python替代一般的shell指令碼,並執行相應的任務,是完全
合理的。Invoke提供了執行常見命令列任務並進行管理的解決方案。對於Invoke來說,每個管理工作就像是Python函數一樣,可以在此基礎上優
雅地設計更為複雜的任務。
需要注意的是,Invoke當前仍是預覽版;如果你想使用穩定的工具(即使是不再積極開發),可以考慮Invoke的前身——Fabric。
5.Splinter
是什麼:Splinter是一個自動化測試網路應用的Python庫。
為什麼需要它: 大家都知道,沒有什麼比自動化網路應用測試更無聊的事了。有了Splinter,就可以將開啟瀏覽器、輸入URL、填寫表單、點擊按鈕等全部操作自動化。
特定的瀏覽器需要使用相應的磁碟機(drivers),不過還好已經內建了Chrome和Firefox磁碟機。另外,Splinter還可以通過Selenium Remote來遠端控制其他機器上的瀏覽器。你甚至可以在目標瀏覽器中手動執行JavaScript代碼。
如果你想知道某個瀏覽器在瀏覽指定網站時的具體情況,那麼Splinter將是一個很有用的工具。如果想瞭解不依賴瀏覽器與網站進行互動,可以查看Twill。(譯者:Twill是一種指令碼語言,支援使用者通過命令列瀏覽網路。)
6.Arrow
是什麼:Arrow這個庫可以更好地處理Python中的日期和時間(data/time)。
為什麼需要它: 處理時區、日期轉換、應對不同的日期格式以及其他日期相關的東西,足夠讓你頭疼一天半的。如果使用Python內建標準庫中的模組,那麼估計你得頭疼兩天了。
改用Arrow庫的話有四大好處,不管長期還是短期都是很有用的。第一,它可以完美替代Python中的datetime模組,這意味著你仍可以使用類似.now()和.utcnow()這些常見的函數調用形式。
第二,它提供了滿足轉換時區等常見需求的方法。第三,它提供了“人性化”的日期/時間資訊——也就是,它可以很輕鬆地告訴你某件事是在“一小時以前”發生的,或是“將在兩小時後”發生。第四,它很容易地將日期/時間資訊轉換為當地時間。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.