代码复用
代码复用
- 将可能需要反复执行的代码封装为函数
- 不仅可以实现代码复用,
- 更重要的是可以保证代码的一致性,只需要修改该函数代码则所有调用均受到影响。
模块化设计
- 当程序长度在百行以上,如果不划分模块,程序的可读性就已经很糟糕了
- 使用函数对程序合理划分为功能模块,并基于模块设计程序是一种常用方法,被称为“模块化设计”
基本要求
- 内聚性:尽可能合理划分功能块,功能块内部耦合紧密
- 松耦合:模块间的关系尽可能简单,功能间的耦合度低
设计函数时,应注意提高模块的内聚性,同时降低模块之间的隐式耦合。
松耦合代表了模块化,从系统观点来看,松耦合是总体设计原则。
函数的使用原则
使用函数只是模块化设计的必要非充分条件,根据计算需求合理划分函数十分重要。
一般来说,完成特定功能或被经常复用的一组语句应该采用函数来封装,并尽可能减少函数间参数和返回值的数量。
例题(二级真题):两点间距离公式常用于函数图形内求两点之间距离、求点的坐标的基本公式,是距离公式之一。两点间距离公式叙述了点和点之间距离的关系。
设两个点A、B以及坐标分别为,则A和B两点之间的距离为:
请输入4个数字(用空格分隔),分别表示x1、y1、x2、y2, 计算距离(保留2位小数输出)。
参考编程模板,参考输入输出示例,完善程序。
输入输出示例
输入 输出 示例 1 1 2 3 4 2.83 示例 2 1 1 2 2 1.14
代码:
def distance(x1,y1,x2,y2): d1 = pow(x1-x2,2); d2 = pow(y1-y2,2); d = pow(d1+d2,1/2) return d if __name__ == '__main__': #(1,2),(3,4)两点间距离 print(distance(1,2,3,4))
拓展:if __name__ == '__main__':的作用
一个python文件通常有两种使用方法,第一是作为脚本直接执行,第二是 import 到其他的 python 脚本中被调用(模块重用)执行。因此 if __name__ == 'main': 的作用就是控制这两种情况执行代码的过程,在 if __name__ == 'main': 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而 import 到其他脚本中是不会被执行的。