什么是PEP8?
在本文中,我们将解释PEP8及其在Python中的使用。此外,我们将在编码时看到它的优点。
更多Python相关文章,请阅读:Python 教程
什么是PEP8?
PEP是Python企业建议的缩写。使用良好逻辑编写代码是编程的关键方面,但许多其他重要元素也会影响代码的质量。开发人员的编码风格使代码更可靠,并且每个开发人员都应该记住Python严格遵循字符串的顺序和格式。
良好的编码风格使代码更易读。简化了端用户的代码
PEP 8是一个包含各种指南的文档,用于编写可读性强的Python代码。 PEP 8讨论了如何作为开发人员构建美丽的代码。它由Guido van Rossum、Barry Warsaw和Nick Coghlan于2001年正式编写。 PEP的主要目标是提高代码的可读性和一致性。
PEP 8已经发展成为大多数Python项目遵循的样式指南;它支持非常易读和视觉上令人愉悦的代码风格。每个Python编码人员都应该在某个时间阅读它;
下面是一些关键点。
缩进
在Python中,不同于其他编程语言,缩进用于定义代码块。代码行的级别由缩进决定,这是Python编程语言的重要特点。通常,我们采用4个空格进行缩进。
四个空格的规则并不总是必需的,可以忽略继续行。
示例
def functionName(first_variable, second_variable, third_variable, fourth_variable):
#为缩进留4个空格
print(first_variable)
使用文档字符串
在Python中,您可以使用单行和多行文档字符串。然而,单行注释适合一行;在这两种情况下,均使用三重引号。它们用于定义特定程序或特定函数。
示例
def tutorialspoint():
"""这是单行文档字符串示例"""
"""这是
多行注释示例"""
行应该包裹,使其不超过79个字符
Python标准库是保守的,要求将行限制为79个字符。括号、方括号和大括号可以用于换行。它们应该优先使用而不是反斜杠。
示例
with open('/path/from/where/you/want/to/read/file') as fileOne, \
open('/path/where/you/want/the/file/to/be/written', 'w') as fileTwo:
file_two.write(file_one.read())
命名规范
为使程序更易于理解和读取,应遵守一些命名规范。与此同时,Python的命名约定有些混乱,但以下是一些可以轻松遵循的命名约定。
用户可见的作为API公共元素的名称应该遵循代表用法而不是实现的约定。
单个小写字母 | e =2 |
---|---|
单个大写字母 | E = 2 |
小写字母 | num = 5 |
带下划线的小写字母 | input_number = 5 |
大写字母 | NUM = 2 |
带下划线的大写字母 | INPUT_NUMBER = 5 |
首字母大写的单词(驼峰命名法) | InputNumber = 10 |
注意
在使用 CapWords 缩写时,确保大写缩写中的所有字母都大写。因此,HTTPServerError preferable 远优于 HttpServerError。
Python 命名规范
下表显示了 Python 中一些最常见的命名风格。
类型 | 命名约定 | 例子 |
---|---|---|
函数 | 可以是小写单词或用下划线分隔的单词。 | demo_function、demo_function |
变量 | 为了提高可读性,可以使用小写字母、单词或分隔单词。 | n、num、input_num |
类 | 类名的第一个字母应该是大写的或使用驼峰命名法。不应使用下划线来分隔单词。 | DemoClass、Model、Tutorialspoint |
方法 | 为了提高可读性,可以使用小写字母、单词或分隔单词。 | demo_method、methodname |
常数 | 可以是短小的、大写字母、单词或分隔单词。 | DEMOCONSTANT、CONSTANT、DEMO_CONSTANT |
模块 | 可以是小写字母、单词或分隔单词。 | Module_name.py、module.py |
包 | 可以是小写字母、单词或分隔单词。不应使用下划线分隔单词。 | package、demopackage |
空白行
使用空白行可以增加 Python 代码的可读性。当多行代码组合在一起时,代码会变得更加难以阅读。我们可以通过使用许多空白垂直行来消除它,但读者可能需要滚动超过必要的距离。要添加垂直空白,请按照以下步骤操作。
顶层函数和类有两行 − 在它们周围添加额外垂直空白,使它们更易于阅读。
class MyFirstClass:
pass
class MySecondClass:
pass
def main_function():
return None
在类中使用单个空白行 − 类中定义的函数彼此相关。
class MyFirstClass:
def first_method(self):
return None
def second_method(self):
return None
在函数内使用空白行 − 有时我们需要创建一个复杂的函数,在 return 语句之前包含许多步骤。因此,我们可以在每个步骤之间插入一个空白行。
注释
评论是任何编程语言中重要的一部分。这是描述代码最有效的方法。当我们用适当的注释记录我们的代码时,任何人都能理解它。但是要记住以下几点。
- 以大写字母开始并写完整个句子。
-
如果代码更改,请更新注释。
-
注释和文档字符串行长度限制为72个字符。
块注释
块注释是一个小代码段的绝佳解决方法。此类注释在编写多行代码以实现单个操作(例如循环迭代)时非常有用。它们帮助我们理解代码的目的。
- 块注释应缩进到相同级别。
-
每行以 # 并加一个空格开头。
-
使用单个 # 来分隔每行注释。
示例
# 分配名称的值(块行注释)
name = "TutorialsPoint"
内联注释
内联注释用于在代码中描述一个语句的部分。我们可以轻松地看到我们为什么要开发特定的代码行。在 PEP 8 中指定了内联注释的以下限制。
- 以and和一个空格开头。
-
使用内联注释时要小心
-
我们应该将内联注释分隔在与它们相关的语句的同一行上。
name = "TutorialsPoint" # 分配名称的值 (内联注释)
结论
在本文中,我们学习了什么是Pep8以及如何使用各种方法编写优质代码。