python 类内函数 使用类成员做形参默认值
时间: 2024-05-16 09:15:23 浏览: 106
函数的形参是类对象+函数的形参是类对象的引用或者指针+函数的返回值是类对象.cpp
在 Python 中,可以使用类成员作为函数的默认参数。这可以通过在函数定义中使用类名来实现。例如,假设我们有一个名为 MyClass 的类,其中包含一个成员变量 my_var:
```
class MyClass:
def __init__(self):
self.my_var = 42
def my_func(self, param=self.my_var):
print(param)
```
在上面的代码中,我们定义了一个名为 my_func 的函数,并将 my_var 作为其默认参数。这意味着如果我们不传递任何参数给 my_func,它将使用 my_var 的值作为参数。现在,我们可以创建 MyClass 的一个实例,然后调用 my_func:
```
my_obj = MyClass()
my_obj.my_func() # 输出 42
```
在这个例子中,我们没有传递任何参数给 my_func,因此它使用了 my_var 的值作为参数。值得注意的是,如果我们修改 my_var 的值,然后再次调用 my_func,它将仍然使用旧值作为参数,因为默认参数只会在函数定义时计算一次。
```
my_obj.my_var = 123
my_obj.my_func() # 仍然输出 42
```
因此,如果您想在每次调用函数时都使用最新的值,您应该将参数设置为 None,并在函数内部检查参数是否为 None,并使用适当的默认值。
阅读全文