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

VS Code运行Python机器学习代码时遇终端退出码2错误求助

解决VS Code中Python代码运行时PowerShell退出码2的问题

一、终端退出码2的直接排查方案

  • 确认Python解释器配置:按Ctrl+Shift+P输入Python: Select Interpreter,选中安装了pandas、scikit-learn等依赖的Python环境(虚拟环境或系统环境均可)。
  • 调整PowerShell执行策略:以管理员身份打开PowerShell,执行命令:
    Set-ExecutionPolicy RemoteSigned
    
    输入Y确认,解除脚本运行限制。
  • 更换终端类型:在VS Code的设置JSON中修改默认终端,按Ctrl+Shift+P输入Preferences: Open Settings (JSON),添加:
    "terminal.integrated.defaultProfile.windows": "Command Prompt"
    
    保存后重启终端,用命令提示符运行代码。

二、代码本身的潜在问题修复

这些问题可能导致程序运行失败,进而触发终端异常退出:

  • 修复文件路径转义:CSV文件路径中的反斜杠会被识别为转义字符,修改为原始字符串格式:
    data = pd.read_csv(r"D:\Dayroi\ML Learn\Test\car-sales-extended.csv")
    
  • 避免无限循环:原代码中while(scoreT < 0.9)可能永远无法终止(汽车销售数据集很难达到0.9的测试集分数),添加循环次数上限:
    scoreH = 1
    scoreT = 0
    max_iter = 50  # 设置最大循环次数
    current_iter = 0
    while scoreT < 0.9 and current_iter < max_iter:
        Xh, Xt, Yh, Yt = train_test_split(taX, y, test_size=0.2)
        clf.fit(Xh, Yh)
        y_prede = clf.predict(Xt)
        scoreH = clf.score(Xh, Yh)
        scoreT = clf.score(Xt, Yt)
        print(scoreT)
        current_iter += 1
    
  • 清理无关代码:MLPClassifier是分类模型,而你的任务是回归(预测Price连续值),当neu=False时不会用到它,建议删除该部分冗余代码,避免混淆。
  • 规范模型保存路径:确保模型文件能正常写入,可指定完整路径或修改文件名:
    pickle.dump(clf, open("car-sales-regressor.pkl", "wb"))
    load = pickle.load(open("car-sales-regressor.pkl", "rb"))
    

内容的提问来源于stack exchange,提问作者PTDL Hermann Gmeiner - Lp 6A2

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 19:22:25