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

WSL环境下VSCode中Jupyter变量无法在.py文件使用及终端同步问题

解决VSCode+WSL+conda环境下Jupyter与.py文件的问题

一、解决变量共享问题

Jupyter内核和.py文件的Python进程是完全独立的,默认无法直接共享变量,可通过以下方式实现:

  • 文件序列化存储:在Jupyter里把变量存成文件,.py文件读取。比如用pickle:
    Jupyter单元格代码:
    import pickle
    x = [10, 20]
    # 把变量存入字典再保存,方便存多个变量
    with open('jupyter_vars.pkl', 'wb') as f:
        pickle.dump({'x': x}, f)
    
    .py文件代码:
    import pickle
    with open('jupyter_vars.pkl', 'rb') as f:
        loaded_vars = pickle.load(f)
    x = loaded_vars['x']
    print(x)  # 输出 [10,20]
    
  • 导出变量代码:在VSCode的Jupyter侧边栏「变量」面板里,右键要共享的变量,选择「Export as Python Code」,会生成包含变量定义的代码块,直接复制到.py文件里就行。

二、让Jupyter运行时终端有输出

默认Jupyter内核的输出只显示在单元格下方,要让WSL终端同步输出,按以下步骤操作:

  1. 打开VSCode设置(快捷键Ctrl+,),搜索「Jupyter: Run In Terminal」,勾选这个选项。
  2. 确认Jupyter用的是当前conda环境:
    • 先在WSL终端激活你的conda环境:conda activate 你的环境名
    • 执行python -m ipykernel install --user --name=你的环境名,把该环境添加到Jupyter内核列表
    • 在Jupyter Notebook右上角切换内核到这个conda环境
  3. 之后运行单元格时,WSL终端会启动内核进程,所有输出(包括print内容、报错信息)都会在终端里显示,同时单元格下方也会保留输出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 22:20:46