No rules, no standard
- 081 缩进
- 082 行长度
- 083 空行
- 084 空格
- 085 文档字符串
- 086 导入顺序
- 087 命名规范
- 088 类型提示
- 089 注释
- 090 主程序入口
过了这一关,就可以享受用Python创造世界的感觉
运行系统:macOS Sonoma 14.6.1
Python编译器:PyCharm 2024.1.4 (Community Edition)
Python版本:3.12
往期链接:
1-5 | 6-10 | 11-20 | 21-30 | 31-40 |
---|
41-50 | 51-60:函数 | 61-70:类 | 71-80:编程范式及设计模式 |
---|
PEP 8 是 Python 的官方编码风格指南,旨在提高代码的可读性和一致性。以下是一些常见的 Python 编程格式和最佳实践。
081 缩进
使用 4 个空格进行缩进,不要使用制表符(Tab)。
- PEP 8 明确规定应该使用空格作为缩进方式,而不是制表符。这一规范广泛被 Python 社区接受,遵循这一标准可以提高代码的可读性。
- -不同的编辑器和 IDE 对制表符的显示宽度可能不同,这可能导致在某些环境中,缩进看起来不一致。使用空格可以确保在不同环境中保持一致的显示效果。
- -如果代码中同时使用空格和制表符,可能导致缩进的混合。这会使得代码在不同的编辑器或环境中显示不一致,进而导致难以阅读和理解。
- -Python 依赖缩进来定义代码块。使用混合缩进(空格和制表符结合)可能导致 IndentationError,从而导致代码无法运行。
def my_function():if True:print("Hello, World!")
082 行长度
PEP 8 建议每行不超过 79 个字符,违反这一规范可能使得代码不符合社区标准,影响团队协作和代码审查。对于文档字符串和注释,可允许到 72 个字符。
处理超长行的方法:
- 换行
使用 Python 的隐式换行(在括号内)或显式换行(使用反斜杠 \)将长行分为多行。
def some_function(a, b):return a + bdef another_function(a, b):return a * bargument1 = 1
argument2 = 2
argument3 = 3
argument4 = 4# 隐式换行, 在外面加一层小括号
result = (some_function(argument1, argument2) +another_function(argument3, argument4))# 显式换行
result1 = some_function(argument1, argument2) + \another_function(argument3, argument4)
- 简化表达式
考虑将复杂表达式分解成多个简单的步骤,使用中间变量来存储结果。
result_1 = some_function(argument1, argument2)
result_2 = another_function(argument3, argument4)
result1 = result_1 + result_2
083 空行
- 在函数和类之间使用两个空行。
- 在类内部的方法之间使用一个空行。
(1)函数和类之间的空行
在定义的函数和类之间应使用两个空行,以便于区分不同的代码块。
class MyClass:passdef my_function():pass
(2)方法之间的空行
在类内部的方法之间应使用一个空行,以提高可读性。
class MyClass:def method_one(self):passdef method_two(self):pass
(3)代码块内部的空行
在逻辑上相关的代码块之间可以使用空行,以提高可读性,但不应过度使用。空行应帮助分隔不同的逻辑部分。
def process_data(data):# 处理数据cleaned_data = clean(data)# 进行分析analyze(cleaned_data)
(4)注释与代码之间的空行
通常在注释和代码之间留一个空行,以使注释更加突出。
def main():"""主函数,执行程序。"""radius = 5# 计算面积area = calculate_area(radius)print("面积:", area)# 计算体积height = 10volume = calculate_volume(radius, height)print("体积:", volume)
许多Python编辑器会自带格式修正功能,例如PyCharm的重新设置文件格式。
084 空格
(1)运算符周围的空格
在二元运算符(如 +、-、*、/ 等)周围应留有空格,以提高可读性。
# 正确
result = a + b# 错误
result=a+b
(2)函数参数和逗号后的空格
在函数参数列表和列表、元组、字典等中,逗号后应留有空格。
# 正确
my_list = [1, 2, 3, 4]
def my_function(arg1, arg2):pass# 错误
my_list = [1,2,3,4]
def my_function(arg1,arg2):pass
(3)括号内的空格