函数默认参数中的计算



我想在python函数的参数中做一个简单的计算,使其成为默认参数,如

def simple_fun(df, cols = df.columns):
print(cols)

我需要df.columns作为默认参数(而不是在函数内)。任何建议都是非常感谢的。

您需要在函数中执行;当计算默认参数值时,df没有定义(或者至少,当调用simple_fun时,它不是您将传递的参数)。

def simple_fun(df, cols=None):
if cols is None:
cols = df.columns
print(cols)

默认实参值的表达式在函数定义时求值,而不是在调用函数时求值。

最新更新