《Python编程:从入门到实践》第八章 函数
定义函数
传递实参
返回值
传递列表
3D打印初版:
3D打印代码重构版:
传递任意数量的实参
将函数存储在模块中
函数编写指南
应给函数指定描述性名称,且只在其中使用小写字母和下划线;
描述性名称可帮助你和别人明白代码想要做什么;
给模块命名时也应遵循上述约定;
每个函数都应包含简要地阐述其功能的注释,该注释应紧跟在函数定义后面,并采用文档字符串格式;
文档良好的函数让其他程序员只需阅读文档字符串中的描述就能够使用它:
他们完全可以相信代码如描述的那样运行,
只要知道函数的名称、需要的实参以及返回值的类型,就能在自己的程序中使用它;
给形参指定默认值时,等号两边不要有空格:
对于函数调用中的关键字实参,也应遵循这种约定:
PEP 8(https://www.python.org/dev/peps/pep-0008/ )建议代码行的长度不要超过79字符,这样只要编辑器窗口适中,就能看到整行代码;
如果形参很多,导致函数定义的长度超过了79字符,可在函数定义中输入左括号后按回车键,并在下一行按两次Tab键,从而将形参列表和只缩进一层的函数体区分开来
如果程序或模块包含多个函数,可使用两个空行将相邻的函数分开,这样将更容易知道前一个函数在什么地方结束,下一个函数从什么地方开始;
所有的 import 语句都应放在文件开头,唯一例外的情形是,在文件开头使用了注释来描述整个程序
小结
如何编写函数,以及如何传递实参,让函数能够访问完成其工作所需的信息;
如何使用位置实参和关键字实参,以及如何接受任意数量的实参;
显示输出的函数和返回值的函数;
如何将函数同列表、字典、if 语句和while 循环结合起来使用;
如何将函数存储在被称为 模块 的独立文件中,让程序文件更简单、更易于理解;
学习了函数编写指南,遵循这些指南可让程序始终结构良好,并对你和其他人来说易于阅读;
程序员的目标之一是,编写简单的代码来完成任务,而函数有助于你实现这样的目标;
它们让你编写好代码块并确定其能够正确运行后,就可置之不理;
确定函数能够正确地完成其工作后,你就可以接着投身于下一个编码任务;
函数让你编写代码一次后,想重用它们多少次就重用多少次;
需要运行函数中的代码时,只需编写一行函数调用代码,就可让函数完成其工作;
需要修改函数的行为时,只需修改一个代码块,而所做的修改将影响调用这个函数的每个地方;
使用函数让程序更容易阅读,而良好的函数名概述了程序各个部分的作用;
相对于阅读一系列的代码块,阅读一系列函数调用让你能够更快地明白程序的作用;
函数还让代码更容易测试和调试;
如果程序使用一系列的函数来完成其任务,而其中的每个函数都完成一项具体的工作,测试和维护起来将容易得多:
你可编写分别调用每个函数的程序,并测试每个函数是否在它可能遇到的各种情形下都能正确地运行;
经过这样的测试后你就能信心满满,深信你每次调用这些函数时,它们都将正确地运行