Python 分类体系(Taxonomy)咨询:模块组件命名及分类可视化正确性验证
你的分类图表存在一处核心错误
你当前的分类中将method与function、class并列作为module的子级不符合Python的实际语法结构:
- method(方法)是定义在class(类)内部的函数,必须绑定类或类的实例才能调用,不属于模块的直接顶层组件
- 模块(即单个.py代码文件)的直接顶层组件可以包含独立函数、类、全局变量/常量三类
如果有R语言使用背景,可以简单理解为Python的module约等于R包内拆分的单个独立R脚本文件,逻辑上是比包更小一级的代码组织单元。
模块内组件集合的统称规范
没有必要强行用functions、methods、classes中的某一类统称,Python社区的通用标准称呼是:
模块成员(module members)
这个表述可以覆盖模块内所有对外暴露的可调用对象、类、变量、常量等所有组件。
修正后的Python代码组织层级参考
- Python运行时
- 包(Package):带有
__init__.py标识文件的目录,用于聚合多个功能关联的模块- 模块(Module):单个
.py格式的代码文件- 模块成员
- 全局变量/常量
- 独立函数(Function)
- 类(Class)
- 类属性
- 实例属性
- 方法(Method)
- 模块成员
- 模块(Module):单个
- 包(Package):带有
内容的提问来源于stack exchange,提问作者Regis Maria O'Connor
相关产品推荐
相关产品推荐

