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

Windows下VS Code中Jupyter单元格报错_set_css_in_cell_output()参数问题

问题原因与解决方法

问题根源

这个错误是VS Code Jupyter扩展与独立Python虚拟环境中Jupyter相关依赖的版本兼容性问题,具体细节:

  • _set_css_in_cell_output是Google Earth Engine(GEE)或Jupyter相关库用于设置单元格输出样式的回调函数,VS Code的Jupyter扩展调用该函数时会自动传入一个参数,但该函数的定义未设置参数接收,从而触发类型错误。
  • 你同事的Conda环境中,Jupyter相关依赖(如ipython、jupyter_client、ipykernel)或GEE包的版本刚好适配VS Code扩展的调用逻辑;而你的独立Python虚拟环境里,这些包的版本和扩展不匹配,导致回调调用时参数不兼容。

解决步骤

  1. 对齐依赖版本
    让同事导出他Conda环境的依赖列表(执行pip list或conda list),找到ipython、jupyter_client、ipykernel、earthengine-api这几个包的版本号,在你的虚拟环境里安装对应版本:

    pip install ipython==[对应版本号] jupyter_client==[对应版本号] ipykernel==[对应版本号] earthengine-api==[对应版本号]
    
  2. 更新VS Code Jupyter扩展
    打开VS Code的扩展面板,找到Jupyter扩展,点击更新到最新版本——新版本通常会修复这类跨环境的兼容性问题。

  3. 手动禁用冲突回调
    如果上述方法无效,可以在笔记本的初始化代码中,取消注册这个冲突的回调函数。找到GEE初始化的代码段,添加以下代码:

    from IPython import get_ipython
    ip = get_ipython()
    # 遍历已注册的pre_run_cell回调,找到目标函数并取消注册
    for callback in ip.events.callbacks['pre_run_cell']:
        if callback.__name__ == '_set_css_in_cell_output':
            ip.events.unregister('pre_run_cell', callback)
            break
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 15:17:42