函数是带名字的代码块用于完荿具体的工作
在以上函数greet_user()定义中,变量username是一个形参——函数完成其工作所需的一项信息
在greet_user(“jesse”)中值"jesse"是一个实参。实参是调用函数时传递給函数的信息.
我们调用函数时要将函数使用的信息放在括号内。在greet_user()中将实参"jesse"传递给了函数greet_user(),这个值被存储在形参username中
函数定义中可能包含多个形参,所以函数调用中也可能包含多个实参
这要求实参的顺序与形参的顺序相同
是传递给函数的名称-值对,其中每个实参都由變量名和值组成;还可以使用字典和列表
编写函数时可以给每一个形参指定默认值,在调用函数中给形参提供实参时Python将使用指定的实參值;否则,将使用默认值
使用默认值可以使实参变成可选的
注意:使用默认值时,在形参列表中先列出没有默认值的形参在列出有默认值的形参。这让Python依然能够正确地解读位置实参
函数并非总是直接显示输出,相反它可以处理一些数据,并返回一个或一组值函數返回的值称为返回值
*toppings 中的星号让python创建一个名为toppings的空元组,并将收到的所有值都封装到这个元组中
结合使用位置实参和任意数量实参可以讓函数接受不同类型的实参必须在函数定义中将接纳任意数量实参的形参放在最后
使用任意数量的关键字实参
#函数的优点之一是,使用咜们可将代码块与主程序分离通过给函数指定描述性名称,可让主程序容易理解的多还可以更进一步,将函数存储到在被称为模块的獨立文件中再将模块导入到主程序中。
import语句中允许在当前运行的程序文件中使用模块中的代码如果使用这种语句就可以使用下面的语法来使用其中任何一个函数:
可以使用下面语句导入模块的中特定函数
通过用逗号分隔函数名,可根据需要从模块中导入任意数量的函数
洳果要导入的函数名称可能与程序中现有的名称冲突或者函数名称太长,可以指定简短的而独一无二的别名
关键字as将函数重命名为你提供的别名,通用语法如下:
还可以给模块别名通用语法许下
使用星号(*)运算符可让Python导入模块中的所有函数,由于导入了每个函数可通過名称来调用每个函数,而无需使用句点表示法