python - 如何将可迭代列表传递给 Python 中的 lambda 函数?

标签 python

下面的代码可以很好地删除 df 列名中包含字符串 basket 的列名,我如何修改下面的代码以传递列表要过滤掉的字符串而不是单个字符串?

banned_columns = ["basket","cricket","ball"]
condition = lambda col: "basket" in col
new_df = df.drop(*filter(condition, df.columns))

上面只是过滤basket。如何从 df.columns 中过滤掉 basketcricketball

最佳答案

您可以使用内置的 any() function 检查排除包含任何禁用词的所有列:

banned_columns = ["basket","cricket","ball"]
condition = lambda col: any(word in col for word in banned_columns)
new_df = df.drop(*filter(condition, df.columns))

关于python - 如何将可迭代列表传递给 Python 中的 lambda 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51379078/

相关文章:

Python + Selenium : Path to driver

Python tornado redis - 如何做一个管道

python - 沿任意表面探针采样数据量

python - 日期范围的 Django 表单

php - 我是否需要像 PHP 那样使用 Python 编写 Node.js?

python - 如何在linux中的wxpython面板中播放SWF

python - python中的多元曲线拟合用于估计椭圆形状的参数和阶数

python - Django 装饰器@transaction.non_atomic_requests 在 ViewSet 方法中不起作用

python - 将nginx放在uWSGI前面有什么好处?

带有时间戳的 Python 输出文件