Python中函数调用的方法主要有以下几种:
直接调用函数
使用函数名后跟一对圆括号,并在括号中提供参数。
def my_function(param1, param2):
return param1 + param2
result = my_function(1, 2)
print(result) 输出:3
使用关键字调用
在调用函数时,使用关键字参数,每个参数后面跟一个冒号。
def my_function(param1, param2):
return param1 + param2
result = my_function(param1=1, param2=2)
print(result) 输出:3
使用非关键字可变长参数(tuple)
使用`*`收集参数,参数以元组形式传递。
def my_function(param1, param2, *args):
return param1 + param2 + sum(args)
result = my_function(1, 2, 3, 4, 5)
print(result) 输出:15
使用关键字可变长参数(dict)
使用` `收集参数,参数以字典形式传递。
```python
def my_function(param1, param2, kwargs):
return param1 + param2 + kwargs.get('extra', 0)
result = my_function(1, 2, extra=3)
print(result) 输出:6
```
使用`partial`函数
`partial`函数可以固定函数的部分参数,生成一个新的函数。
from functools import partial
def my_function(param1, param2):
return param1 + param2
power_2 = partial(my_function, param2=2)
result = power_2(3)
print(result) 输出:9
使用`eval`函数
`eval`函数可以动态执行字符串形式的Python代码。
def my_function(x):
return x * 2
cmd = "my_function(5)"
result = eval(cmd)
print(result) 输出:10
使用`getattr`函数
`getattr`函数可以获取对象的属性值。
class MyClass:
def __init__(self):
self.value = 10
obj = MyClass()
result = getattr(obj, 'value')
print(result) 输出:10
使用`lambda`函数
`lambda`函数可以创建匿名函数。
square = lambda x: x2
print(square(3)) 输出:9
以上是Python中函数调用的一些常见方法。您可以根据需要选择合适的方法来调用函数