Python代碼編寫規範,你真的會嗎?


前言python

本文的文字及圖片來源於網絡,僅供學習、交流使用,不具備任何商業用途,版權歸原做者全部,若有問題請及時聯繫咱們以做處理。
做者:yangjiajia123456 
web

最近兩年的工做都是和運維相關,有時運維人員也會寫一些python程序,但基本上都沒有遵循相應的代碼規範,一貫粗暴,能用就行,既不考慮可讀性也不考慮可維護性,做爲一個開發人員有時候看他們寫代碼就很不舒服,今天就談談python寫代碼時的一些規範。若是你剛學python.不久遇到問題多,建議能夠來小編的Python交流.裙 :一久武其而而流一思(數字的諧音)轉換下能夠找到了,裏面有最新Python教程項目可拿,不懂的問題多跟裏面的人交流,都會解決哦!編程

1.命名網絡

函數、變量及屬性都應該用小寫單詞拼寫,只見用_鏈接,不遵循駝峯命名法
類與異常應該首字母大寫,不要用_鏈接
受保護的實例屬性,應以單下劃線開頭
實例的私有屬性,應以上下劃線開頭
模塊級別的變量單詞都要大寫,中間以單下劃線隔開
變量要儘量有意義
2.空白多線程

和語法相關的每一層縮進都用4個空格表示
賦值時等號兩邊都要有一個空格
每一行所佔用的字符數應不超過79,實際操做中應當儘可能不讓代碼編輯器的行滾動條顯示出來
在使用函數進行函數式編程時,函數之間要空兩行
在類中的函數,函數之間應該空一行
函數與類是同一個級別,則他們之間應該空兩行
對於超出每行規定的字符數的長表達式,應當敲回車縮進,一般除了首行其他各行都要在原來的基礎上再次縮進4個空格
3.語句併發

判斷變量是否爲None、False或True時不要用==,要用is,例如,if a is None
import語句應放在句首,導入時要儘可能使用絕對導入不要使用相對導入,而且導入時最好指定相應的模塊的某一具體功能,例如,from datetime import datetime
模塊導入時應根據標準庫模塊、第三方模塊以及自用模塊進行分類
檢測容器不爲空時,應使用if 容器名,例如,lists = [] if lists
採用內聯形式的否認詞,不要把否認詞放在整個表達式的前面,例如,應該if a is not None 而不是 if not a is None
4.註釋運維

對某些重要的代碼塊的功能說明,應使用單行註釋
對整個模塊功能的說明應使用多行註釋
對類或函數的功能及使用方法的詳細說明應使用文檔字符串
python的註釋儘可能使用英文
5.併發編輯器

I/O密集型,像web應用這樣的場景應該使用多線程編程
計算密集型,像計算圓周率等場景應該使用多進程編程,儘量利用多核CPU優點
固然在編寫代碼時你的某些編輯器如pycharm會幫助你檢測代碼規範,只要認真遵循通常不會出什麼問題。咱們編寫代碼不只是要實現某種功能,就儘管它是核心,可是你的代碼在之後極有可能會交給別人去維護,因此你寫的代碼應當儘量地讓人看懂,避免給別人留坑。
——總結,以上五條基本規劃是很是核心的,但願你們遵照養成良好的習慣,若是你剛學python.不久,遇到問題多,建議能夠來小編的Python交流.裙 :一久武其而而流一思(數字的諧音)轉換下能夠找到了,裏面有最新Python教程項目可拿,不懂的問題多跟裏面的人交流,都會解決哦!函數式編程

相關文章
相關標籤/搜索