原文: Pycoder Weekly /
編譯: 蟒週刊
Python作爲程序員的寵兒,越來越得到人們的關注,使用Python進行應用程序開發的越來也多。那麼,在2013年有哪些流行的Python項目呢?下面,我們一起來看下。
一、測試和調試
- python_koans :Python Koans 算 “Ruby Koans” 的一部分,作爲交互式教程,可以學習 TDD 技巧。
- sure :Sure 是最適合自動化測試的 Python 工具,包含流利的斷言、深度選擇器等等特性。
- responses :用 responses 能令測試更加輕鬆,這是一個可以僞裝各種請求的庫。
- boom :Boom! Apache Bench 的替代品。作爲一個命令行工具,Boom 能對你的應用進行快捷的 smoke test。
- cricket : BeeWare 套件的一部分,cricket 是種圖形化工具,協助你進行案例測試。
- bugjar : BeeWare 套件的一部分,bugjar 是針對 Python 的圖形化交互式調試器。
- pudb :pudn 是針對Python 的全屏命令行調試器。
- voltron :更好的 gdb 界面。
二、Web框架
- django-stronghold :試過將 login_required 裝飾器四處亂放? 在你的堡壘中令所有 Django 視圖有默認 login_required 唄。
- Falcon Framework :Falcon自稱爲髙性能雲接口框架,號稱能在相同硬件條件下提高服務端性能30倍! 聽起來有點兒意思?
- django-xadmin :用 bootstrap 對 django-admin進行了深度升級,提供了可插件安裝的儀表盤。
- clay :基於 Flask 的封裝,能令我們輕鬆的創建 RESTful 後端服務,完整文檔可查看 clay 。
- flask-restful :基於 Flask 的簡單框架,用以創建 REST 接口。
- sandman :Sandman 希望通過REST 接口暴露你現有的app,相關 博客 也值得一讀。
- Django Unchained :名字很髙大上,也的確是 Python Django 初學者的靠譜指南。
三、併發
- pulsar :部署新web 服務器走起! 有趣的事件驅動的併發框架 ! 兼容從2.6+到pypy 的所有python版本!
- toro :同步化的Tornado 協程支持。
- offset :Offset Go 的 併發模式在 Python 中的實現,請參考相關演講 幻燈 來理解!
四、任務調度
- pyres :從 resque 獲得靈感的純Python任務調度模塊,是 celery 的替代。
- dagobah :Dagobah 是Python 完成的簡單關係依賴爲基礎的任務調度模塊,還包含很COOL 的關聯任務工作流圖形工具。
- schedule :使用生成器模式來爲定期任務生成配置的進程調度模塊。
五、實用工具
- howdoi :發覺你總在 Google 一些簡單的最簡單的編程任務? howdoi能讓你遠離瀏覽器,就解決這類事兒!
- delorean :時間旅行?簡單! Delorean 的目標就是令你的Python 項目在處理時間/日期時輕而易舉!查閱完備的 文檔 。
- powerline-shell :對於那些想讓常用工具漂亮起來人,一定要用 powerline-bash,能打造漂亮的shell提示符,增加力線(powerline),兼容 Bash/Zsh。
- fn.py :在Python 中談及函數編程時失落的那節”電池”終於出現了! 如果對 Python函數式編程 有興趣的立即下手安裝體驗吧!
- lice :爲你的開源工程方便的追加許可證,而不用自個兒去 Google,支持 BSD、MIT和GPL 以及變種協議。
- usblock :基於 USB來鎖定或是解鎖你的筆記本!
- Matchbox :MatchBox 能在你自個兒的服務器上提供類似Dropbox 風格的備份服務! 基於 Flask 並通過 http 協議進行文件傳輸。
- cleanify :用cleanify能異步美化你項目的所有 html/css/js文件。
- locksmith :Locksmith是AES加密的口令管理器,看起來不錯,完全開源,源代碼、截屏都有。
- storm :在Storm的命令行界面,管理你所有的SSH 連接。
- sqlparse ::這個很給力! sqlparse 是個 SQL 有效性分析器,支持解析/分裂/格式化SQL 語句。
- autopep8 :能自動化以 pep8 來格式化你的代碼。
- colout :colout用以在命令行中色彩化輸出,這就從其 github page 查看範例來體驗吧。
- bumpversion :版本號衝撞總是惱人的,而每個人總是忘記給發行版本打tag,bumpversion 用一條簡單的命令簡化了這方面的操作。
- pyenv :需要更好的管理你Python的多版本環境 ? pyenv 讓你能簡潔的作到!(甚至超出你的預期!有插件能將 VirtualEnv 也無縫結合進來!)
- pip-tools :一整套能令你的Python 項目保持清爽的工具。
- cdiff :Cdiff是種非常 nice 的工具,可以用彩色輸出統一diff 格式信息,或用雙欄形式來展示。
六、數據科學及可視化
- data_hacks :由 bitly 發佈的一堆數據分析用命令行工具。這些工具接受命令行或是其它工具輸入的數據,輕易的生成柱圖以及直方圖等等。
- 給黒客的概率編程和貝葉斯方法 :這書是極好的,介紹如何用貝葉斯方法和概率編程進行數據分析,而且每章都提供了用以 iPython Notebooks 的示例。
- simmetrica :想對自個兒的應用基於時間的數據序列 進行展示、彙總、分享嘛? 趕緊上 simmetrica 吧,同時還提供了可定製的儀表盤。
- vincent : Python構建的專爲運用D3.js 進行可視化的vega轉換工具。
- bamboo :一種簡潔的實時數據分析應用,bamboo 提供了一個進行合併、彙總、數值計算的數據實時接口。
- dataset :難以置信的工具,dataset讓對數據庫的讀寫簡單的象對 JSON 文件的操作,沒有其它的文件配置,頃刻間就讓你在BOSS 面前高大上起來。
- folium :喜歡地圖?也愛Python? Folium 讓你在地圖上自在操縱數據。
- prettyplotlib :用prettyplotlib來強化你的 matplotlib,讓你默認的matplotlib輸出圖片更加漂亮.
- lifelines :有興趣在Python 中研究 生存分析 的話,不用觀望了,用lifelines! 包含對 Kaplan-Meier、Nelson-Aalen和生存迴歸分析。
七、編輯器及其改善
- sublime-snake :想在無盡的coding中喘口氣? 當然是這種經典遊戲了……
- spyderlib :又一個用Python 寫的開源IDE。
- vimfox :對於Vim黨最貼心的web專發工具,VimFox 能讓 vim 實時的看到 css/js/html 的修改效果,能神奇的讓 vim 中的修訂,立即在瀏覽器中看到。
- pcode :基於 Py3 的IDE,通過簡單的UI提供了重構、工程管理等。
八、持續交付
- metrology :這個庫很酷,支持你對應用進行多種測量並輕鬆輸出給類似 graphite 的外部系統。
- python-lust :支持在Unix 系統中用Python 實現一個守護進程。
- scales :Scales 對你的Python 應用進行持續狀態和統計,併發送數據到 graphite 。
- glances :跨平臺,基於 curses 命令行的系統監視工具。
- ramona :企業級的應用監管。 Ramona 保證每個進程在值,一但需要立即重啓,並有監控/日誌輸出,會發送郵件提醒。
- salmon :基於 Salt Stack 的多服務監視系統,即能作報警系統,也能當監控系統。
- graph-explorer :Graph-explorer 是對 Graphite 面板的增強,比原版的好很多,值得體驗。
- sovereign :Sovereign 是一系列 ansible 的攻略手冊,能爲自個兒建造個私人云。
- shipyard :能在指定的機器上彈出你的彈窗實例,也支持你創建/刪除等等對彈窗的遠程控制。
- docker-py :瘋狂的 docker 工程接口的Python 包裝。
- dockerui :基於 docker 接口通過web 界面進行交互操作的工具。
- django-docker :如果想知道怎麼將Djnago 應用同 Docker 結合? 可以從這裏學習。
- diamond :Python 實現的守護進程,自動從你的服務或是其它指定數據源中提取數值,並 graphite 、 以及其它支持的 狀態面板/收集系統輸出。
九、Git
- git-workflow :可視化你的 git 工作流程的工具,示例: Demo 。
- gitto :簡潔的庫,協助你建立自個兒的 git 主機。
- git-imerge :git-imerge 能讓 git 進行增量合併。 本質上是允許你在進行 imerge 有衝突時,有機會先合併掉,再繼續。
十、郵件與聊天
- mailbox :Mailbox 是對Python 的IMAP 一個人性化的再造。 基於簡單即是美的態度,作者對 IMAP 接口給出了一個簡單又好理解的形式。
- deadchat :deadchat 旨在不安全的網絡環境中提供安全的單一房間羣聊服務以及客戶端。
- Mailpile :Mailpile 是針對郵件的索引及搜索引擎 。
十一、音頻和視頻
- pms :窮人的 Spotify ,搜索和收集音樂流!
- dejavu :在琢磨 Shazam 的原理? 音頻指紋識別算法的Python實現在此!(譯註: Shazam :是個神奇的音樂識別應用,對她啍個幾秒調子,就能精確告訴你是什麼歌曲、作者、歌詞……)
- HTPC-Manager :爲 HTPC 粉絲準備的工具,提供了完備的界面來管理所有家庭媒體服務器上的好物。
- cherrymusic :Python 實現的一個音樂流媒體服務器。 流化輸出你的音樂到所有設備上。
- moviepy :腳本化的電影剪輯包,切/串/插入標題等基本操作,幾行就搞定!
十二、其它
- emit :用 redis 爲你的函式追加可訂閱能力,很有趣。
- zipline :Zipline 是種 很Pythonic 的交易算法庫。
- raspberry.io :Raspberry.io 是樹莓派的社區實現。 剛剛發佈,彙集了各種創意想法,有興趣的話立即檢出折騰吧。
- NewsBlur :Google Reader 已經關張兒了,Newsblur 已經發布了有段日子了,開源的 RSS 閱讀器,這絕對是應該首先體驗的。
- macropy :Macropy 是在 Python 中實現 macros 的庫。 檢出文檔,參考所有功能,看怎麼用上了。
- mini :對編譯器以及語言設計有興趣的,一定要看看這個倉庫,以及配套的錄像!
- parsimonious :Parsimonious 的目標 是最快的 arbitrary-lookahead 解析器。 用Python 實現,基本可用。
- isso :Disqus 的開源替代,從demo 看很不錯,而且提供了更好的隱私設置。
- deaddrop :Deaddrop 能爲新聞機構或是其它人 提供在線投遞箱,詳細信息參考其 github page 。
- nude.py :裸體檢測的Python 實現,是 node.js 的仿製。
- kaptan : Kaptan 是你應用的配置管理器!
- luigi :Luigi 幫你構建複雜的管道來完成批處理。
- gramme :Gramme 以簡單而優雅的方式,通過 UDP 接口對易失數據完成消息包裝序列化。
- q :爲你的Python 程序提供快速而隨性的日誌。 有一系列幫手來追蹤你的函式參數,並能在控制檯快速交互式加載。
- fuqit :來自偉大的 Zed Shaw 最新作品,fuqit 試圖令你忘記 MVC 的經驗,用全新的方式專注簡潔一切。
- simplicity :基於靠譜的 pydanny 將你的 新結構化文本 轉換爲 JSON 格式。
- lassie :Lassie 允許你輕鬆的從網站檢索出內容來。
- paperwork :Paperwork 是個 OCR 文檔並完成可搜索轉化的工具,用GTK/Glade實現了友好的界面。
- cheat :cheat 允許你創建並查閱命令行上的交互式備忘。設計目的是幫助 *nix 的系統管理員們在習慣的環境中,快速調閱不易記憶的常用命令。
- cookiecutter :良心模塊! 提供一堆有用但是不常寫,所以記不下來的代碼模板,也支持自制代碼模板。
- pydown :支持用Python構建亮麗的HTML5 效果幻燈, Demo 。
- Ice :模擬器粉絲們現在能用 Ice 向 Steam 裏塞 ROM 來玩了。
- pants :用以編寫異步網絡應用的輕量級框架。 Pants 是單線程,回調服務,也包含支持Websockets 的 HTTP 服務、WSGI支持和一個簡單的web 框架。
- pipeless :Pipeless 是一個構建簡單 數據管道 的框架。
- marshmallow :marshmallow 是個 ORM 無關的庫,能將複雜的數據類型轉換爲Python 原生類型對象,以便容易的轉換爲JSON 提供接口使用。
- twosheds :Python 實現的庫,用來構造命令或是shell 解釋器。Twosheds 讓你用 Python 來定製自個兒的 shell 環境。