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

如何在Jupyter的bash magic中同时引用Python变量和环境变量

解决方法

Jupyter 解析 ! 开头的 shell 命令时,若检测到未转义的 $ 会优先将命令交给 shell 处理,跳过 Python 的 {} 插值逻辑,这是问题的核心原因。可以用以下三种方式实现同时输出Python变量和shell环境变量:

  • 方法1:转义shell环境变量的$前缀,让Jupyter先完成Python表达式求值再交给shell执行
    代码示例:

    !echo "{1+1}" "\$HOME"
    

    输出结果:

    2 /home/ec2-user
    
  • 方法2:所有变量都在Python侧读取,完全使用Python插值逻辑,避免和shell的$语法冲突
    代码示例:

    import os
    !echo "{1+1}" "{os.environ['HOME']}"
    
  • 方法3:提前将Python表达式的结果赋值给变量,使用Jupyter原生支持的$+变量名语法引用Python变量,可直接和shell环境变量的$语法共存
    代码示例:

    py_calc_result = 1 + 1
    !echo $py_calc_result $HOME
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 18:54:04