Python3调用函数时可以设定一些参数,可使用的正式参数类型有以下四种:必需参数、关键字参数、默认参数和不定长参数。

必需参数

必需参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。

调用 printme() 函数,你必须传入一个参数,不然会出现语法错误:

python的类参数赋值 python3 参数类型_函数调用

以上实例输出结果:

python的类参数赋值 python3 参数类型_python云计算开发笔记_02

关键字参数

关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。

使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。

以下实例在函数 printme() 调用时使用参数名:

python的类参数赋值 python3 参数类型_函数调用_03

以上实例输出结果:

python的类参数赋值 python3 参数类型_调用函数_04

以下实例中演示了函数参数的使用不需要使用指定顺序:

python的类参数赋值 python3 参数类型_调用函数_05

以上实例输出结果:

python的类参数赋值 python3 参数类型_python的类参数赋值_06

默认参数

调用函数时,如果没有传递参数,则会使用默认参数。以下实例中如果没有传入 age 参数,则使用默认值:

python的类参数赋值 python3 参数类型_调用函数_07

以上实例输出结果:

python的类参数赋值 python3 参数类型_函数调用_08

不定长参数

你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,和上述 2 种参数不同,声明时不会命名。基本语法如下:

python的类参数赋值 python3 参数类型_默认参数_09

加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。

python的类参数赋值 python3 参数类型_调用函数_10

以上实例输出结果:

python的类参数赋值 python3 参数类型_函数调用_11

如果在函数调用时没有指定参数,它就是一个空元组。我们也可以不向函数传递未命名的变量。如下实例:

python的类参数赋值 python3 参数类型_函数调用_12

以上实例输出结果:

python的类参数赋值 python3 参数类型_调用函数_13

还有一种就是参数带两个星号 **基本语法如下:

python的类参数赋值 python3 参数类型_调用函数_14

加了两个星号 ** 的参数会以字典的形式导入。

python的类参数赋值 python3 参数类型_python云计算开发笔记_15

以上实例输出结果:

python的类参数赋值 python3 参数类型_python的类参数赋值_16

声明函数时,参数中星号 * 可以单独出现,例如:

python的类参数赋值 python3 参数类型_默认参数_17

如果单独出现星号 * 后的参数必须用关键字传入。

python的类参数赋值 python3 参数类型_python云计算开发笔记_18