Python代碼規範,python代碼

來源:互聯網
上載者:User

Python代碼規範,python代碼

一:背景

用於正常化ocp python開發,對於使用python開發的程式使用統一的風格,便於代碼的維護

二:python風格規範

  • 分號:不要在行尾加分號,也不要用分號將兩條命令放在同一行
  • 括弧:寧缺毋濫的使用括弧。除非是用於實現行串連,否則不要在返回語句或者條件陳述式中使用括弧,不過在元組兩邊使用括弧是允許的
  • 縮排:用4個空格來代替縮排代碼。絕對不要用tab,也不要tab和空格混用。對於行串連的情況,你應該要麼垂直對齊換行的元素,或者使用4空格的懸進式縮排(這時第一行不應該有參數)
  • 空行:頂級定義之間空兩行,比如函數或者類定義。方法定義,類定義與第一個方法之間,都應該空一行。函數或者方法中,某些地方要是你覺得合適,就空一行
  • 空格:按照標準的排版規範來使用標點兩邊的空格。括弧內不要有空格;不要在逗號、分號、冒號前邊加空格,但應該在它們後邊加(除了在行尾);參數列表、索引或者切片的左括弧不應加空格;在二元操作符兩邊都加上一個空格,比如賦值(=),比較(==, <, >, !=, <>, <=, >=, in, not in, is, is not),布爾(and, or, not)。至於算術操作符兩邊的空格該如何使用,需要你自己好好判斷。不過兩側務必要保持一致;當’=’用於指示關鍵字參數或預設參數值時,不要在其兩側使用空格;不要用空格來垂直對齊多行間的標記,因為這會成為維護的負擔(適用於:, #, =等)
  • 類:如果一個類不繼承自其它類,就顯示的從object類繼承
  • 字串:即使參數都是字串,使用%操作符或者格式方法格式化字串,不要使用+的方式
  • 匯入方式:每個匯入獨佔一行。匯入總應該放在檔案頂部,位於模組注釋和文檔字串之後,模組全域變數和常量之前。匯入應該按照最通用到最不通用的順序分組:標準庫匯入;第三方庫匯入;應用程式指定匯入,每個分組中應該根據每個模組的完整包路徑按照字典順序排序,忽略大小寫
  • 語句:通常每個語句應該獨佔一行。如果測試結果與測試語句在一行放得下,也可以將它們放在一行。如果是if語句,只有在沒有else時才能這樣做。特別地,絕對不要對try/except這樣做,因為try和except不能放在同一行。
  • 命名:ob_module_name ob_package_name ObClassName TestObClassName method_name test_method_name ExceptionName function_name GLOBAL_VAR_NAME instance_var_name function_parameter_name local_var_name
  • 其它點待後續補充

三:要求:

  • 代碼修改後必須先跑pylint再發起review,pylint跑分要控制在90之上,對於一些顯而易見的不合規範之處必須修正
  • pylint使用:在obztools目錄下執行tools/pylint.sh file

四:參考:

  • PEP 8 – Style Guide for Python Code:猛擊這裡
  • Python 編碼風格指南中譯版(Google SOC):猛擊這裡

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.