Python代碼規范(PEP8)問題及解決


轉載:https://blog.csdn.net/Jason_Lewis/article/details/75386598

最近剛剛接觸Python,為了養成好習慣,盡量保證自己寫的代碼符合PEP8代碼規范,下面是過程中報出的警告及解決方法,英文有些翻譯不太准確見諒,會不斷更新:

  1. PEP 8: module level import not at top of file 
    解決:import不在文件的最上面,可能引用之前還有代碼,把import引用放到文件的最上部就可以消除警告了。
  2. PEP 8: expected 2 blank lines,found 0 
    解決:期望上面有2個空白行,發現0個,添加兩個空白行就可以了。
  3. function name should be lowercase 
    解決:函數名改成小寫。
  4. PEP 8: indentation contains tabs 
    解決:縮進中有tab空格,推薦用四個空格縮進。
  5. Indent expected 
    解決:意思是沒有縮進,解析器報錯了,添加縮進就可以了。
  6. Unexpected indent 
    解決:不期望的縮進,重新添加符合規范的縮進或者Alt+Enter快捷鍵會提示你轉化成規范的縮進。
  7. PEP 8: missing whitespace around operator 
    解決:意思是操作符(‘=’,‘<’等)前后丟失了空格,舉個例子a=b會報警告,a = b正常。
  8. PEP 8: no newline at end of file 
    解決:文件尾部沒有新起一行,光標移到最后回車即可。
  9. PEP 8: blank line at end of file 
    解決:文件最后多了一個空白行,只要有一個即可,刪掉一個。
  10. Shadows name ‘xxx’ from outer scope 
    解決:意思是‘xxx’在外部已經定義了,修改一下‘xxx’-> ‘uuu’或者其他符合要求的修改都可。
  11. PEP 8: block comment should start with ‘# ’ 
    解決:說的很清楚要以#加一個空格開始
  12. PEP 8: inline comment should start with ‘# ’ 
    解決:注釋信息單獨放一行
  13. PEP 8: multiple statements on one line (colon) 
    解決:多行語句寫到一行了,Python3.0好像不允許寫到一行了,例如if x == 2: print(something)這樣寫就會有警告,必須要分兩行。像下面這樣 
    if x == 2: 
    print(something)
  14. Symplify chained comparision 
    解決:警告的意思是可簡化連鎖比較,下面舉個例子 
    if a > 0 and a < 9 可修改為 if
  15. PEP 8:

文章最后添加一些講Python規范的文章:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM