Python 是一個(gè)美麗的語言,可以激發(fā)用戶對它的愛。所以如果你試圖加入程序員行列,或者你有點(diǎn)厭倦C ,Perl,Java 和其他語言,我推薦你嘗試Python. Python有很多吸引程序員的功能 ,它易學(xué),面向?qū)ο?,字?jié)碼編譯,免費(fèi)且開源。還有運(yùn)行時(shí)檢查。完整快速的支持,可以執(zhí)行各種任務(wù)的擴(kuò)展。 高效的Python 在這篇文章,我想強(qiáng)調(diào)一些 Python 可以節(jié)約時(shí)間并最大限度地提高生產(chǎn)力的方面。在做準(zhǔn)備時(shí),我咨詢了幾個(gè) Pythonists,他們最節(jié)省時(shí)間的技巧是什么?答案在這里… 1. 不使用分號(hào) 使用分號(hào)在 Python 中是可選的,對比其他面向?qū)ο笳Z言,你不需要在每一條語句后面使用分號(hào)。 這看起來很簡單,似乎也節(jié)省不了多少時(shí)間;但一旦你的代碼量擴(kuò)展到數(shù)千號(hào),這些分號(hào)就變得分心且沒有必要鍵入。 2. 找一個(gè)稱手的代碼編輯器 選擇一個(gè)稱手的代碼編輯器可以節(jié)省大量的時(shí)間。面對這么多代碼編輯器,很多新手都會(huì)感覺很迷茫。 習(xí)慣一個(gè)編輯器再使用其他編輯器會(huì)覺得很混亂,所以選一個(gè)稱手的是一個(gè)好的起點(diǎn)。不管你選擇哪一個(gè),要實(shí)時(shí)支持 flake8 和 PEP8。 關(guān)于編輯器選擇指南,請參考文章 Which Code Editors Do Pythonists Use? 3. 遵循 Python 代碼規(guī)范 遵循 Python 代碼規(guī)范可以提升代碼的可讀性,從而節(jié)省評審代碼的時(shí)間。(Python 的設(shè)計(jì)哲學(xué) 強(qiáng)調(diào)代碼的可讀性。) 4. 使用 help() 函數(shù) Python 的 help() 是隨手可用的內(nèi)置函數(shù)可以節(jié)約很多時(shí)間,比如查找其他函數(shù)的解釋。你可以在解釋器終端直接運(yùn)行該函數(shù)。 Python 文檔有更多該函數(shù)的用法。 5. 使用庫 Python 有大量的庫可以讓你不必每次都重復(fù)造輪子。 比如,你可以從 PyPI(Python包索引)選擇大量可用的包,這是一個(gè)軟件倉庫。 Scikit-image 是一個(gè)很好例子,它使圖像處理任務(wù)如模糊,增強(qiáng)對比度,縮放只需要一些函數(shù)調(diào)用就可以完成。 6. 使用Cookiecutter Cookiecutter 是一命令行工具,可以幫助你從工程模板創(chuàng)建 Python 工程,這可以節(jié)省大量的時(shí)間。 7. 嚴(yán)格的注釋 養(yǎng)成寫注釋的好習(xí)慣,可以節(jié)省你和其他人的時(shí)間,尤其是作調(diào)試跟蹤。(是的我們聽到很多,但似乎很多程序員還是需要提醒)。 注釋在團(tuán)隊(duì)合作是非常關(guān)鍵,尤其是一個(gè)做了大量變更。 8. 經(jīng)常測試 嘗試測試你程序中的每一個(gè)組件。聽起來好像有點(diǎn)費(fèi)時(shí),但長時(shí)間運(yùn)行可以節(jié)省大量時(shí)間,幫助你發(fā)現(xiàn)隱藏的 bug,讓你對代碼更放心,還強(qiáng)制你理解自己的每一片代碼在真實(shí)情況下是如何地運(yùn)行。 REPL 是一個(gè) read-eval-print loop,一個(gè)常用的代碼測試工具,很多 Pythonists 使用它。 9. 專注和專業(yè) Pythonists 都建議要有一個(gè)專注領(lǐng)域和專長。你可以使用 Python 做很多事情,從編寫網(wǎng)頁攝像到處理計(jì)算和算法。 已經(jīng)有大量的庫可以幫助完成這些任務(wù),如 SimpleCV,計(jì)算機(jī)視覺處理;Biopython,是一個(gè)生物計(jì)算庫; SymPy,是一個(gè)數(shù)學(xué)符號(hào)計(jì)算庫。 深入類似這些的領(lǐng)域,并掌握一個(gè)特定的框架,幫助你在更深的層次學(xué)習(xí) Python,掌握一個(gè)特定的代碼風(fēng)格(在第三部分已經(jīng)提到),處理特定類型的問題。 10. 每天編碼 當(dāng)你養(yǎng)成了每天寫 python 代碼,使用 python 解決問題的習(xí)慣,你就會(huì)開始用 python 思考,可以這么說,這將最終會(huì)幫助你更快的解決問題。 總結(jié) 在這邊簡短的文章中,我已經(jīng)列舉了主要的幾個(gè)我從和 python 開發(fā)者的對話收集來的 tips,下面的是我能夠添加進(jìn)去的其他的 tips. 參與 python 的活動(dòng)和集會(huì) 保證參加你能夠參加到的每場活動(dòng)和集會(huì)。他們有益于分享經(jīng)驗(yàn),最佳實(shí)踐,工具和其他有趣的話題。 這可能表面上不是一種省事的策略,但是通過建議,提示,破解來學(xué)習(xí)其他人的經(jīng)驗(yàn)是另一種避免重復(fù)造輪子的方法。 每年一次的 PyConf 是一個(gè)知曉活動(dòng)的好地方。 紙上思考 紙上思考 —— 在直接深入代碼之前這樣做 —— 將給你進(jìn)行修改的靈活性。直接就去寫代碼會(huì)強(qiáng)迫你從一開始就得去考慮實(shí)現(xiàn)的細(xì)節(jié), 這在啟動(dòng)項(xiàng)目時(shí)常常不是對你的時(shí)間的最佳利用方式。紙上思考這種解放注意力的方式對于頭腦風(fēng)暴和問題的解決都很有好處! |
|