Python代码规范(PEP8)问题及解决

安装了PyCharm,写代码过程中总是看到有波浪线,百度了下找到了这篇文章。

原文链接https://blog.csdn.net/Jason_Lewis/article/details/75386598

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

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
解决:意思是操作符(‘=’,‘<’等)前后丢失了空格,举个例子a=b会报警告,a = b正常。
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’或者其他符合要求的修改都可。
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 < 9 可修改为 if
PEP 8:
文章最后添加一些讲Python规范的文章:

http://blog.csdn.net/xiaoliu5396/article/details/46005293
http://blog.csdn.net/zgljl2012/article/details/51907663
http://www.cnblogs.com/ajianbeyourself/p/4377933.html
---------------------
作者:LPF_FORFREE
来源:CSDN
原文:https://blog.csdn.net/Jason_Lewis/article/details/75386598
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/weiwei2016/p/10162073.html

时间: 2024-11-10 14:49:18

Python代码规范(PEP8)问题及解决的相关文章

Python编程规范(PEP8)

Python编程规范(PEP8) 代码布局 缩进 对于每一次缩进使用4个空格.使用括号.中括号.大括号进行垂直对齐,或者缩进对齐. 制表符还是空格? 永远不要将制表符与空格混合使用.Python最常用的缩进方式是只是用空格. 当调用Python命令行的 -t 选项时,它会检测并警告代码非法混合使用制表符和空格.当使用 -tt 选项时,警告变成了错误. 最大行长度 限制所有行最长为79个字符. 使用反斜杠来分行是一个很好的选择. 我们应当选择在二元操作符之后进行分行,而不是之前. 空行 使用两行空

python 编码规范PEP8

PEP8 Python 编码规范整理 无规矩不成方圆, 学习python也要遵循相关的编码规范 PEP8 Python 编码规范 一 代码编排 1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格. 2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车. 3 类和top-level函数定义之间空两行:类中的方法定义之间空一行:函数内逻辑无关段落之间空一行:其他地方尽量不要再空行. 二 文档编排 1 模块内容的顺序:模块说明

学习 python 编写规范 pep8 的问题笔记

决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此编码了,还会持续更新. PEP8 Python 编码规范 一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车.3 类和top-level函数定义之间空两行:类

Python代码规范

一:背景 用于规范化ocp python开发,对于使用python开发的程序使用统一的风格,便于代码的维护 二:python风格规范 分号:不要在行尾加分号,也不要用分号将两条命令放在同一行 括号:宁缺毋滥的使用括号.除非是用于实现行连接,否则不要在返回语句或者条件语句中使用括号,不过在元组两边使用括号是允许的 缩进:用4个空格来代替缩进代码.绝对不要用tab,也不要tab和空格混用.对于行连接的情况,你应该要么垂直对齐换行的元素,或者使用4空格的悬进式缩进(这时第一行不应该有参数) 空行:顶级

python代码规范 自动优化工具Black

自动优化工具Black 在众多代码格式化工具中,Black算是比较新的一个,它***的特点是可配置项比较少,个人认为这对于新手来说是件好事,因为我们不必过多考虑如何设置Black,让 Black 自己做决定就好. 1).安装与使用 与pylint类似,直接pip install black即可完成该模块的安装,不过black依赖于Python 3.6+,但它仍然可以格式化Python2的代码. 在使用方面black默认读取指定python文件并对其进行代码规范格式化,然后输出到原文件. l = 

老李分享:pep8 python代码规范

什么是PEPPEP是 Python Enhancement Proposal 的缩写,翻译过来就是 Python增强建议书 . PEP8 译者:本文基于 2013-08-02 最后修改的 PEP8 版本翻译,若要查看英文原文,请参考PEP8简介 本文档给出的编码约定,来源于 Python 主发行版标准库中的代码.Python 的 C 语言实现所使用的 C 语言风格指南,请参考PEP7. 本文档与 PEP 257(文档字符串规范)都来自于 Guido1) 的 Python Style Guido

002.[python学习]python编码规范pep8学习——PEP8第一部分代码布局

关于PEP8的详细说明可以参考官方原文:http://legacy.python.org/dev/peps/pep-0008/ 我参考官方文档及其他文章,摘出相关内容而得此文章,具体参考其他文章见文中最后参考资料处. 当想要让自己所写的代码为更多人使用.交流学习时,不能写出只有机器认识的代码,而是对于人而言具有良好的可读性,此时就需要遵从一个公共的约束来规范自己的代码,那么<Style Guide for Python Code(PEP8)>是个很好的选择. 首先PEP8中声明,有以下有理由忽

Python 代码规范

命名 module_name, package_name, ClassName, method_name, ExceptionName, function_name, GLOBAL_VAR_NAME, instance_var_name, function_parameter_name, local_var_name. 应该避免的名称 单字符名称, 除了计数器和迭代器. 包/模块名中的连字符(-) 双下划线开头并结尾的名称(Python保留, 例如__init__) 命名约定 所谓"内部(Int

零基础如何学好python?Python代码规范之命名规范

目录 1.模块 模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况) 1 ''' 2 在学习过程中有什么不懂得可以加我的 3 python学习交流扣扣qun,934109170 4 群里有不错的学习教程.开发工具与电子书籍. 5 与你分享python企业当下人才需求及怎么从零基础学习好python,和学习什么内容. 6 ''' 7 # 正确的模块名 8 import decoder 9 import html_parser 10 11 # 不推荐的模块名 12