命名lambda函数导致python中出现错误

命名lambda函数导致python中出现错误,python,lambda,Python,Lambda,在groupby中,我使用lambda,并将其命名为,以便以后阅读。但出于某种原因,我不知道这行代码是否有效 'tradePrice': ['first', np.max, np.min, 'last', lambda x: max(x) - min(x)], 但在为lambda函数添加名称时,如下所示: 'tradePrice':['first',np.max, np.min, 'last',('priceRange',lambda x: max(x) - min(x))], 我得到一

在groupby中,我使用lambda,并将其命名为,以便以后阅读。但出于某种原因,我不知道这行代码是否有效

  'tradePrice': ['first', np.max, np.min, 'last', lambda x: max(x) - min(x)],
但在为lambda函数添加名称时,如下所示:

'tradePrice':['first',np.max, np.min, 'last',('priceRange',lambda x: max(x) - min(x))],
我得到一个错误:

回溯(最近一次调用上次):文件 “C:\Users\gilad\venv\lib\site packages\pandas\core\sorting.py”,第行 446,安全等级
sorter=values.argsort()类型错误:'替换工作代码中的
lambda

'tradePrice': ['first', np.max, np.min, 'last', lambda x: max(x) - min(x)],
使用命名的
lambda
将包括:

priceRange = lambda x: max(x) - min(x)

# ...

'tradePrice': ['first', np.max, np.min, 'last', priceRange],

其优点是可读性和在其他地方重用
lambda
函数的能力。

是否有人(或某些参考资料或工具)告诉您应该命名lambda?如果是这样,我怀疑您误解了命名lambda函数的含义:这并不意味着将lambda放入带有字符串的元组中。相反,您希望在前一行中执行
priceRange=lambda x:max(x)-min(x)
def priceRange(x):返回max(x)-min(x)
。在任何情况下,我们都无法在不看到更多代码的情况下回答此问题。你能给出一个最小的、完整的和可验证的例子()吗?
priceRange = lambda x: max(x) - min(x)

# ...

'tradePrice': ['first', np.max, np.min, 'last', priceRange],