注释
*注1 函数是带名字的代码块,用于完成具体的工作.要执行函数定义的特定任务,可以调用该函数.当需要在程序中多次执行同一项任务时,无需反复编写完成该任务的代码,只用调用完成该任务的函数.
*注2 紧跟在def greet_user():后边的所有缩进行构成了函数体,第二行文本时称为文档字符串的注释,描述了函数是做什么的,能包含多行.
*注3 在上述例子中,username是一个形参(可以理解为标准样本),而'jesska'是一个实参(可以理解为实际的值).在上述例子中,我们将实参'jesska'传递给函数greet_user(username):
*注4 函数定义中可能包含多个形参,因此函数调用中也可能包含多个实参.向函数传递实参的方式很多:位置实参,关键字实参以及列表和字典.
*注5 在函数中可以根据需要使用任意数量的位置实参,py将按顺序将函数调用中的实参关联到函数定义中相应的实参.
*注6 编写函数时,可以给每个形参指定默认值.如果在调用函数时指定了实参值,就会使用这个实参值.否则就会使用默认的形参值.
*注7 当使用默认值时,必须在形参列表中先列出没有默认值的形参.// 12形参放在前,赋默认值后类似实参,放在后边
*注8 函数并非总是直接显示输出,它还可以处理一些数据,并返回一个或者一组值.函数返回的值称为返回值.在函数中,可以使用return语句将值返回到调用函数的那行代码
*注9 age在此处是数字int,不能用空字符串表示
*注10 在函数中对这个列表所做的任何修改都是永久的.使用函数可以让程序更容易扩展和维护.且每个函数都应只负责一项具体工作
*注11 要求是即便打印了所有的设计,也要保留原来未打印的设计列表,作为存档.那么只需要在调用函数时,将列表复制一下作为实参user[:]
*注12 通用形参名*args创建的是(元组),用于收集任意数量的位置实参.
通用形参名**kwargs创建的是字典,用于收集任意数量的关键字实参
编写函数时,可以用各种方法混合使用位置实参,关键字实参和任意数量的实参
*注13 该方法将模块pizza中的每个函数都复制到这个程序文件中,可通过名称来直接调用,无需再使用点号(.)然而在使用并非自己编写的大型模块时,最好不要使用这种导入方法,以为如果模块中有函数的名称与当前项目中已经有的名称想用,可能导致意想不到的结果,覆盖函数.
最接的做法是1.只导入要用的函数 2. 导入整个模块并使用点号