首页后端开发Pythonpython中可变函数怎么定义

python中可变函数怎么定义

时间2023-06-05 09:58:02发布访客分类Python浏览868
导读:python中可变函数怎么定义?如果我们想要在调用函数时,少输入一些变量。我们可以在定义函数值,输入一些默认的参数值:def add(a, b = 2, c = 3 :return a + b + cprint(add(2 output:...

python中可变函数怎么定义?

如果我们想要在调用函数时,少输入一些变量。我们可以在定义函数值,输入一些默认的参数值:

def add(a, b = 2, c = 3):

return a + b + c

print(add(2))

output: 7

1

2

3

4

1

2

3

4

add函数有3个变量,那么我们在定义它的时候,后俩个变量被我们赋予了默认参数值分别是2和3。若没有在调用时,明确给出后俩个变量的参数值,那么python会自动调用默认参数值。

合法调用方式:

add(2),add(2,3),add(2,4,5)

非法定义方式:

def add(a,b = 2, c):

return a + b + c

1

2

3

4

5

1

2

3

4

5

但是要注意,当你定义了第一个变量的默认参数值后,那么后面的变量必须全部都带有默认参数值。

参数量可变的函数定义

在python中有一个∗ *∗运算符,来实现可变参数的函数定义。

*的用法,列表的解包:

arg = [2,4]

for i in range(*arg):

print(i)

字典的解包,直接为函数提供关键字以及参数:

d = { 'a':1,'b':2,'c':3}

def add(a,b,c):

return a + b + c

print(add(**d))

output:6

1

2

3

4

5

6

7

8

9

10

1

2

3

4

5

6

7

8

9

10

当存在一个形式为 **name 的最后一个形参时,它会接收一个字典,其中包含除了与已有形参相对应的关键字参数以外的所有关键字参数。 这可以与一个形式为 *name,接收一个包含除了与已有形参列表以外的位置参数的 元组 的形参组合使用 (*name 必须出现在 **name 之前。) 例如,如果我们这样定义一个函数:

def cheeseshop(kind, *arguments, **keywords):

print("-- Do you have any", kind, "?")

print("-- I'm sorry, we're all out of", kind)

for arg in arguments:

print(arg)

print("-" * 40)

for kw in keywords:

print(kw, ":", keywords[kw])

1

2

3

4

5

6

7

8

1

2

3

4

5

6

7

8

我们可以这样去调用它:

cheeseshop("Limburger", "It's very runny, sir.",

"It's really very, VERY runny, sir.",

shopkeeper="Michael Palin",

client="John Cleese",

sketch="Cheese Shop Sketch")

1

2

3

4

5

1

2

3

4

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: python中可变函数怎么定义
本文地址: https://pptw.com/jishu/62373.html
python怎么定义x变量 python图标怎么显示在桌面上

游客 回复需填写必要信息