You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas Style函数为符合列值的行设置黄色背景与粗体

解决Pandas DataFrame行同时设置黄色背景和粗体的问题

你之前的错误在于用了错误的方式组合CSS样式,Pandas的样式系统要求每个单元格的样式是单个字符串,多个CSS属性需要用分号;分隔,而不是用&或字典格式。

修正后的完整代码

import pandas as pd

df = pd.DataFrame({"A" : [14, 4, 5, 4, 1],
                   "B" : [5, 2, 54, 3, 2],
                   "C" : [20, 20, 7, 3, 8], 
                   "D" : [14, 3, 6, 2, 6],
                   "E" : [23, 45, 64, 32, 23]}) 

def highlight(s):
    if s.C == 7:
        # 把两个CSS样式用分号合并到同一个字符串中
        return ['background-color: yellow; font-weight: bold'] * len(s)
    else:
        # 返回空字符串使用默认样式,无需强制设置白色背景
        return [''] * len(s)

df.style.apply(highlight, axis=1)

错误原因说明

  • 你尝试的&是Python的按位与运算符,不能用来拼接CSS样式字符串,完全不符合样式系统的要求。
  • 字典格式也不是style.apply期望的输入,它只接受字符串形式的CSS声明,多个属性用分号分隔即可实现多样式叠加。

内容的提问来源于stack exchange,提问作者raml5

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 00:32:09