lzb1001 发表于 2023-5-9 23:45:25

收集参数

def test(* params, exp=8): # 定义函数时设置了默认参数
        print('参数的个数是:', len(params), exp)
        print('第二个参数是:', params)

>>> test(1, '小甲鱼', 3.14, 5, 6, 6, 7, 8) # 会将默认参数8也统计进参数的个数!
参数的个数是: 8 8
第二个参数是: 小甲鱼

>>> test(1, '小甲鱼', 3.14, 5, 6, 6, 7, exp=8) # 不会将默认参数8也统计进参数的个数!
参数的个数是: 7 8
第二个参数是: 小甲鱼

isdkz 发表于 2023-5-9 23:46:10

这段代码定义了一个名为test的函数,该函数接受任意个参数,并且有一个名为exp的默认参数,其默认值为8。在第一个例子中,我们传递了8个参数给test函数,其中一个是exp的默认值,因此len(params)返回8,而不是7。在第二个例子中,我们明确地将exp参数设置为8,因此len(params)返回7,而不是8。

sfqxx 发表于 2023-5-10 07:09:36

所给代码展示了一个具有默认参数的 Python 函数示例。

函数 'test' 接受任意数量的输入参数作为 *params,并且还具有将参数 exp 设置为 8 的默认参数。当使用输入参数调用该函数时,它打印出输入 params 的长度和第二个输入参数。

在对 'test' 的第一次调用中,提供了八个输入参数,其中包括默认参数 'exp=8'。因此,输出显示传递了 8 个参数(包括 'exp'),并且第二个参数是 '小甲鱼'。

在对 'test' 的第二次调用中,提供了七个输入参数,并明确设置了 'exp' 参数为 8。由于 'exp' 未计入总参数数中,因此输出显示传递了 7 个参数,第二个参数仍然是 '小甲鱼'。

Axiujiu 发表于 2023-5-10 09:16:04

感激,在这里找到了答案。
页: [1]
查看完整版本: 收集参数