新聞中心
PEP是python Enhancement Proposal的縮寫,通常翻譯為“Python增強提案”。每個PEP都是一份為Python社區(qū)提供的指導(dǎo)Python往更好的方向發(fā)展的技術(shù)文檔,其中的第8號增強提案(PEP 8)是針對Python語言編訂的代碼風格指南。盡管我們可以在保證語法沒有問題的前提下隨意書寫Python代碼,但是在實際開發(fā)中,采用一致的風格書寫出可讀性強的代碼是每個專業(yè)的程序員應(yīng)該做到的事情,也是每個公司的編程規(guī)范中會提出的要求,這些在多人協(xié)作開發(fā)一個項目(團隊開發(fā))的時候顯得尤為重要。我們可以從Python官方網(wǎng)站的PEP 8鏈接中找到該文檔,下面我們對該文檔的關(guān)鍵部分做一個簡單的總結(jié)。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名注冊、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、豐縣網(wǎng)站維護、網(wǎng)站推廣。
相關(guān)推薦:《Python入門教程》
空格的使用
1、使用空格來表示縮進而不要用制表符(Tab)。這一點對習(xí)慣了其他編程語言的人來說簡直覺得不可理喻,因為絕大多數(shù)的程序員都會用Tab來表示縮進,但是要知道Python并沒有像C/C++或Java那樣的用花括號來構(gòu)造一個代碼塊的語法,在Python中分支和循環(huán)結(jié)構(gòu)都使用縮進來表示哪些代碼屬于同一個級別,鑒于此Python代碼對縮進以及縮進寬度的依賴比其他很多語言都強得多。在不同的編輯器中,Tab的寬度可能是2、4或8個字符,甚至是其他更離譜的值,用Tab來表示縮進對Python代碼來說可能是一場災(zāi)難。
2、和語法相關(guān)的每一層縮進都用4個空格來表示。
3、每行的字符數(shù)不要超過79個字符,如果表達式因太長而占據(jù)了多行,除了首行之外的其余各行都應(yīng)該在正常的縮進寬度上再加上4個空格。
4、函數(shù)和類的定義,代碼前后都要用兩個空行進行分隔。
5、在同一個類中,各個方法之間應(yīng)該用一個空行進行分隔。
6、二元運算符的左右兩側(cè)應(yīng)該保留一個空格,而且只要一個空格就好。
標識符命名
PEP 8倡導(dǎo)用不同的命名風格來命名Python中不同的標識符,以便在閱讀代碼時能夠通過標識符的名稱來確定該標識符在Python中扮演了怎樣的角色(在這一點上,Python自己的內(nèi)置模塊以及某些第三方模塊都做得并不是很好)。
1、變量、函數(shù)和屬性應(yīng)該使用小寫字母來拼寫,如果有多個單詞就使用下劃線進行連接。
2、類中受保護的實例屬性,應(yīng)該以一個下劃線開頭。
3、類中私有的實例屬性,應(yīng)該以兩個下劃線開頭。
4、類和異常的命名,應(yīng)該每個單詞首字母大寫。
5、模塊級別的常量,應(yīng)該采用全大寫字母,如果有多個單詞就用下劃線進行連接。
6、類的實例方法,應(yīng)該把第一個參數(shù)命名為self以表示對象自身。
7、類的類方法,應(yīng)該把第一個參數(shù)命名為cls以表示該類自身。
表達式和語句
在Python之禪(可以使用import this查看)中有這么一句名言:“There should be one-- and preferably only one --obvious way to do it.”,翻譯成中文是“做一件事應(yīng)該有而且最好只有一種確切的做法”,這句話傳達的思想在PEP 8中也是無處不在的。
1、采用內(nèi)聯(lián)形式的否定詞,而不要把否定詞放在整個表達式的前面。例如if a is not b就比if not a is b更容易讓人理解。
2、不要用檢查長度的方式來判斷字符串、列表等是否為None或者沒有元素,應(yīng)該用if not x這樣的寫法來檢查它。
3、就算if分支、for循環(huán)、except異常捕獲等中只有一行代碼,也不要將代碼和if、for、except等寫在一起,分開寫才會讓代碼更清晰。
4、import語句總是放在文件開頭的地方。
5、引入模塊的時候,from math import sqrt比import math更好。
6、如果有多個import語句,應(yīng)該將其分為三部分,從上到下分別是Python標準模塊、第三方模塊和自定義模塊,每個部分內(nèi)部應(yīng)該按照模塊名稱的字母表順序來排列。
本文名稱:創(chuàng)新互聯(lián)Python教程:pythonpep8是什么
分享網(wǎng)址:http://www.dlmjj.cn/article/dhjscss.html


咨詢
建站咨詢
