EPE 8規(guī)范
PEP 8: W191 indentation contains tabs
因?yàn)檎迟N來的代碼用tab縮進(jìn),而現(xiàn)在的代碼用space當(dāng)縮進(jìn)
解決辦法
方法一:Edit -> Convert Indents -> To Spaces
方法二:ctrl + shift + A => 在彈出的窗口中輸入“To Spaces”就可以將所有的tab轉(zhuǎn)為space
方法三:Code-> Reformat Code
先設(shè)置好縮進(jìn)為space,一個(gè)Tab為4個(gè)space
PEP 8: W292 no newline at end of file
這里是要求你在末尾新起一行
PEP 8: W391 blank line at end of file
每個(gè)文件末尾應(yīng)只有一個(gè)空白行,并且只有一個(gè)空白行。當(dāng)空白行為零,兩個(gè)或多于兩個(gè)時(shí),將發(fā)生此警告。
PEP 8: E203 whitespace before ‘,’
這個(gè)意思是逗號(hào)前面不能有空格
PEP 8: E231 missing whitespace after ‘,’
這個(gè)意思是逗號(hào)后面要有一個(gè)空格
PEP 8: E251 unexpected spaces around keyword / parameter equals
就是多了空格
PEP 8: E261 at least two spaces before inline comment
行內(nèi)注釋前需要兩個(gè)空格
PEP 8: E262 inline comment should start with ‘# ’
行內(nèi)注釋應(yīng)該以’#'加空格開始
PEP 8: E271 multiple spaces after keyword
關(guān)鍵字后空格多了
PEP 8: E302 expected 2 blank lines, found 1
就是希望有兩個(gè)空行來區(qū)分
PEP 8: E305 expected 2 blank lines after class or function definition, found 0
這個(gè)是寫完函數(shù)和類之后要空出兩個(gè)空行(方便區(qū)分)
PEP 8: E271 multiple spaces after keyword
關(guān)鍵字后使用了多個(gè)空格,應(yīng)該只使用一個(gè)空格
PEP 8: E302 expected 2 blank lines, found 0
有兩個(gè)空白行,但是沒有發(fā)現(xiàn)
在聲明函數(shù)的那一行的上方必須有兩行的空行,否則便出現(xiàn)這個(gè)情況。
現(xiàn)在只需要按照python的編碼規(guī)范,在定義函數(shù)前空兩行即可,問題解決。
PEP 8: E303 too many blank lines (2)
太多的行
這個(gè)規(guī)范對(duì)每行代碼之間的間隔進(jìn)行了定義,簡(jiǎn)單來說:
函數(shù)之間,類之間一般要空2行
類方法之間一般空1行
函數(shù)/方法代碼內(nèi)部每行間隔不超過1行
PEP 8: E402 module level import not at top of file
import不在文件的最上面,可能引用之前還有代碼,把import引用放到文件的最上部就可以消除警告
關(guān)于縮進(jìn)、多余空格、空行數(shù)量等相關(guān)的警告,均可使用yapf一鍵格式化(快捷鍵AIT+SHIFT+F)
trailing whitespace:尾隨空格,通常出現(xiàn)在語句結(jié)尾,一般刪除句末空格即可。
multiple spaces after keyword:關(guān)鍵字后的多個(gè)空格,多于格式要求空格,刪去。
indentation is not a multiple of four:縮進(jìn)不是4的倍數(shù),修改空格為偶數(shù),2/4等。
missing whitespace around operator:缺少操作符周圍的空格
行注釋格式: #前兩個(gè)空格,#后一個(gè)空格。
函數(shù)def編寫格式:(expected 2 blank lines, found 1預(yù)計(jì)有2個(gè)空白行,找到1個(gè)) 函數(shù)首尾均空兩行