Python代码规范问题及解决

时间:2023-02-04 23:09:30

Python代码规范问题及解决

为了养成使用Python编程好习惯,尽量保证自己写的代码符合PEP8代码规范,下面是过程中报出的警告及解决方法,英文有些翻译不太准确见谅,会不断更新:

PEP 8 只是检测风格错误,而非编码错误!

PEP 8: module level import not at top of file

解决:import不在文件的最上面,可能引用之前还有代码,把import引用放到文件的最上部就可以消除警告了。

PEP 8: expected 2 blank lines,found 0

解决:期望上面有2个空白行,发现0个,添加两个空白行就可以了。

function name should be lowercase

解决:函数名改成小写。

PEP 8: indentation contains tabs

解决:缩进中有tab空格,推荐用四个空格缩进。

Indent expected

解决:意思是没有缩进,解析器报错了,添加缩进就可以了。

Unexpected indent

解决:不期望的缩进,重新添加符合规范的缩进或者Alt+Enter快捷键会提示你转化成规范的缩进。

PEP 8: missing whitespace around operator

解决:意思是操作符(‘=’,‘

PEP 8: no newline at end of file

解决:文件尾部没有新起一行,光标移到最后回车即可。

PEP 8: blank line at end of file

解决:文件最后多了一个空白行,只要有一个即可,删掉一个。

Shadows name ‘xxx’ from outer scope

解决:意思是‘xxx’在外部已经定义了,修改一下‘xxx’-> ‘uuu’或者其他符合要求的修改都可。

我的Python学习交流群:5679-90-374欢迎一起同行

PEP 8: block comment should start with ‘# ’

解决:说的很清楚要以#加一个空格开始

PEP 8: inline comment should start with ‘# ’

解决:注释信息单独放一行

PEP 8: multiple statements on one line (colon)

解决:多行语句写到一行了,Python3.0好像不允许写到一行了,例如if x == 2: print(something)这样写就会有警告,必须要分两行。像下面这样

if x == 2:

print(something)

Symplify chained comparision

解决:警告的意思是可简化连锁比较,下面举个例子

if a > 0 and a

或者选择性忽略它!

打开:File - Settings…… - Editor - Inspections

在python下找到PEP8 coding style violation,在右边下面的Ignore errors里可以添加忽略的警告信息ID,如下:

Python代码规范问题及解决

PEP 8 coding style violation

如E302就是忽略“expected 2 blank lines, found 0”这个警告

  • 发表于: 2018-06-06
  • 原文链接:https://kuaibao.qq.com/s/20180606G22WVP00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。