Coursera 笔记

Module 01 · Python Coding Practices and Packaging Concepts

Python Style Guide and Coding PracticesPython 风格指南和编码实践

Coursera ↗

观看此视频后,您将能够:

  • 描述编写可读性高代码的重要性。
  • 列出 Python 编码规范。
  • 解释静态代码分析。

1. 为什么代码可读性很重要?

编写代码时,需要确保团队成员能够轻松阅读和理解代码。这要求遵循一定的编码标准和规范。

Python Enhancement Proposal 8 (PEP 8) 是 Python.org 发布的一份文档,它提供了规范和指南,使您的 Python 代码可读性高且格式一致。

提高代码可读性的关键指南 (PEP 8)

规范 详细说明 目的
使用空格代替制表符 (Tab) 使用四个空格作为每个缩进级别。 不同的文本编辑器和 IDE 对 Tab 键的解释不同(例如,一个解释为 3 个空格,另一个解释为 4 个空格),这会导致代码格式不统一和潜在的格式错误。使用统一的 4 个空格可确保可读性。
使用空行分离函数和类 使用空行来分隔代码中的函数和类的定义。 帮助区分代码的不同部分,明确函数和类的起始和结束位置。
在操作符周围使用空格 在运算符(如 +、-、= 等)周围使用空格。 使命令看起来更清晰、更离散,从而提高命令的可读性。
在逗号后使用空格 在逗号后面使用空格。 提高列表、参数等的可读性。
  • 示例 (使用空格): 推荐使用 A = B + C,而不是 A=B+C。

2. 编码约定和一致性

遵循编码约定有助于保持代码的一致性和可管理性。

提高代码一致性的约定

约定/实体 命名规范 示例 目的
函数 和 文件 全小写,并用下划线分隔单词。 def comp_surface_radiation(...) Python 许多内置库和函数也使用这种约定,有助于保持唯一性并与 Python 生态系统保持一致。
功能块 将较大的代码块(如复杂的 if-else 结构)放入单独的函数中。 C = function_one(A, B) 提高代码的执行速度,支持代码块的方便重用,并提高可管理性。
类 (Classes) 使用 Camel Case (驼峰命名法) 或 Cap Word Case(即每个单词的首字母大写,不使用下划线)。 class LambSquirrelCage 这是编码社区普遍接受的类命名约定,有助于区分代码中的类和函数。
常量 (Constants) 所有单词大写,并用下划线分隔单词。 MAX_FILE_UPLOAD_SIZE 命名通常表明常量用途,并提供了代码中常量标识的一致性。
Python 包(例外) 不鼓励使用下划线。 mypackage (而不是 my_package) 这是 Python 包命名的一种例外规范。

3. 静态代码分析 (Static Code Analysis)

软件开发人员通常使用静态代码分析来管理代码是否符合这些样式指南。

  • 定义: 静态代码分析是一种不执行代码,而是根据预定义的样式和标准来评估代码的方法。
  • 作用: 静态分析有助于发现以下问题:
    • 编程错误
    • 编码标准违规
    • 未定义的值
    • 语法违规
    • 安全漏洞
  • 工具: 您可以使用 PyLint 库来检查您的 Python 代码是否符合 PEP 8 指南。