Python模块结构和布局
来源:互联网 发布:c语言多线程函数 编辑:程序博客网 时间:2024/06/01 08:13
用模块来合理组织你的Python代码是简单又自然的方法。你应该建立一种统一且容易阅读的结构,并将它应用到每一个文件中去。下面就是一种非常合理的布局:
(1) 起始行(Unix)
(2) 模块文档
(3) 模块导入
(4) 变量定义
(5) 类定义
(6) 函数定义
(7) 主程序
下图是一个典型模块的内部结构图解。
(1) 起始行
通常只有在类Unix 环境下才使用起始行,有起始行就能够仅输入脚本名字来执行脚本,无需直接调用解释器。
(2)模块文档
简要介绍模块的功能及重要全局变量的含义,模块外可通过 module.__doc__ 访问这些内容。
(3)模块导入
导入当前模块的代码需要的所有模块;每个模块仅导入一次(当前模块被加载时);函数内部的模块导入代码不会被执行,除非该函数正在执行。
(4)变量定义
这里定义的变量为全局变量,本模块中的所有函数都可直接使用。从好的编程风格角度说,除非必须,否则就要尽量使用局部变量代替全局变量,如果坚持这样做,你的代码就不但容易维护,而且还可以提高性能并节省内存。
(5)类定义语句
所有的类都需要在这里定义。当模块被导入时class 语句会被执行, 类也就会被定义。类的文档变量是class.__doc__。
(6)函数定义语句
此处定义的函数可以通过module.function()在外部被访问到,当模块被导入时 def 语句会被执行,函数也就都会定义好,函数的文档变量是function.__doc__。
(7) 主程序
无论这个模块是被别的模块导入还是作为脚本直接执行,都会执行这部分代码。通常这里不会有太多功能性代码,而是根据执行的模式调用不同的函数。
推荐代码风格:主程序调用main()函数
主程序代码通常都和你前面看到的代码相似,检查 __name__ 变量的值然后再执行相应的调用。
主程序中的代码通常包括变量赋值, 类定义和函数定义,随后检查__name__来决定是否调用另一个函数(通常调用main()函数)来完成该模块的功能。
大部分的Python 模块都是用于导入调用的,直接运行模块应该调用该模块的回归测试代码。
- Python 模块结构和布局
- Python模块结构和布局
- Python模块结构和布局
- 模块结构和布局
- python模块结构和布局与__name__ 指示模块被加载问题
- Python模块结构与布局操作实例
- Python 核心编程笔记_Chapter_3 Note_2 模块结构布局
- Python模块布局
- python 模块布局
- [Python]模块文件结构
- python 堆结构 heapq模块
- Android launcher3布局和结构
- Android launcher3布局和结构
- 关于页面结构和布局
- Python 模块和包
- Python模块和包
- Python 模块和包
- python模块和包
- C++Vector用法 .
- hdu-4933-Miaomiao's Function(BC#4 1003)
- S3C2440上触摸屏驱动实例开发讲解(转)
- ZOJ1655Transport Goods Dijkstra
- 黑马程序员-集合框架
- Python模块结构和布局
- 杭电 1698 Just a Hook(线段树区间修改)
- css 过渡效果
- 【Thinking in java】对象导论
- 2014华为机试题5:回文数
- 编程艺术第三章 找最小的K个数
- mini2440 触摸屏驱动程序分析
- Linux学习之-引导流程
- sqlite学习笔记2:创建数据库