一、編程規(guī)范 1.縮進(代碼塊) 類定義、函數(shù)定義、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、with塊、行尾的冒號表示縮進的開始。 python程序是依靠代碼塊的縮進來體現(xiàn)代碼之間的邏輯關(guān)系,縮進結(jié)束就表示一個代碼塊結(jié)束。 同一個級別的代碼塊的縮進量必須相同。 一般而言,以4個空格為基本縮進單位。 2.每個import語句只導(dǎo)入一個模塊,最好按標準庫、擴展庫、自定義庫的順序依次導(dǎo)入。
3.最好在每個類、函數(shù)定義和一段完整的功能代碼之后增加一個空行,在運算符兩側(cè)各增加一個空格,逗號后面增加一個空格。
4.盡量不要寫過長的語句。如果語句過長,可以考慮拆分成多個短一些的語句,以保證代碼具有較好的可讀性。如果語句確實太長而超過屏幕寬度,最好使用續(xù)行符(line continuation chharacter)“\”,或者使用圓括號將多行代碼括起來表示一條語句。
5.括號,雖然python運算符有明確的優(yōu)先級,但對于復(fù)雜的表達式建議在適當(dāng)?shù)奈恢檬褂美ㄌ柺沟酶鞣N運算的隸屬關(guān)系和順序更加明確、清晰。 6.注釋 以符號#開始,表示本行#之后的內(nèi)容為注釋 包含在一對三引號’‘’ ‘’‘或“”“ ”“”之間且不屬于任何語句的內(nèi)容江北解釋器認為是注釋。
7.在開發(fā)速度和運行速度之間盡量取得最佳平衡。 內(nèi)置對象運行速度最快,標準庫次之,用C或Fortran編寫的擴展庫速度也比較快,而純Python的擴展庫往往速度慢一些。 在開發(fā)項目時,應(yīng)優(yōu)先使用Python內(nèi)置對象,其次考慮使用Python標準庫提供的對象,最后考慮使用第三方擴展庫。 8.根據(jù)運算特點選擇最合適的數(shù)據(jù)類型來提高程序的運行速率。 如果定義一些數(shù)據(jù)只是用來頻繁遍歷并且關(guān)心順序,最好優(yōu)先考慮元組。 如果需要頻繁的測試一個元素是否存在于一個序列中并且不關(guān)心其順序,盡量采用集合。 列表和元組合in操作的時間復(fù)雜度是線性的,而對于集合和字典卻是常數(shù)級的,與問題規(guī)模幾乎無關(guān)。
9.充分利用關(guān)系運算符以及邏輯運算符and和or的惰性求值特點,合理組織條件表達式中對各條件的先后順序,減少不必要的計算。 10.充分利用生成器對象或類似迭代對象的惰性計算特點,盡量避免將其轉(zhuǎn)換為列表,元組等類型,這樣可以減傷堆內(nèi)存的占用,降低空間復(fù)雜度。 11.減少內(nèi)循環(huán)中的無關(guān)計算,盡量往外層提取。
古之立大事者,不惟有超世之才,亦必有堅忍不拔之志。-代碼規(guī)范
|
|
來自: 文炳春秋 > 《Python資料》