【问题】一招解决vscode输出和终端不一致的困扰

发布于:2025-04-18 ⋅ 阅读:(23) ⋅ 点赞:(0)

背景(闲话Trae)

Trae是挺好,用了几天,发现它时不时检查文件,一检测就转悠半天,为此我把当前环境清空,就留一个正在调的程序,结果还照样检测,虽然没影响什么,但感觉好累了,就换回vsCode了。

问题

然后,解决一下vsCode,运行方式不同,运行结果在“输出”和“终端”结果不一样的问题。

再现问题

 让AI写了一个打印运行环境信息的代码,分别通过“run code”和“运行python文件”,两种方式执行,运行或输出结果不同:

 本次检测代码如下:

import sys
import os
import platform

def get_environment_info():
    print("=== 环境信息检测 ===")
    
    # Python版本
    print(f"Python版本: {sys.version}")
    
    # Python解释器路径
    print(f"Python解释器路径: {sys.executable}")
    
    # 当前脚本文件路径
    script_path = __file__
    print(f"当前脚本路径: {os.path.abspath(script_path)}")
    
    # 当前工作目录
    print(f"当前工作目录: {os.getcwd()}")
    
    # 环境变量中的PATH
    print("\nPATH环境变量:")
    for path in os.environ['PATH'].split(os.pathsep):
        print(f"  {path}")
    
    # 系统平台信息
    print(f"\n操作系统: {platform.system()} {platform.release()}")
    
    # 虚拟环境检测
    venv = os.environ.get('VIRTUAL_ENV', '未检测到虚拟环境')
    print(f"虚拟环境路径: {venv}")

if __name__ == "__main__":
    get_environment_info()


print("=== 环境信息检测 ===")    

分析问题

输出端显示的来源

run code 这种执行方式,程序输出的内容显示在“输出”端,是通过插件code Runner执行的:

运行结果,是这样:

可见,Python解释器路径是系统默认的路径,不是当前工作环境的路径。

而且,可见字符集也和系统用的不一样,还乱码。

终端显示的来源

“运行python” 这种执行方式,程序输出的内容显示在“终端”,是使用的当前工作区设置的运行环境:

解决办法

让run code输出到终端,直接用系统的环境就可以了,具体设置如下:

找到曾经安装的插件code runner,进行如图设置,勾选Run In Terminal的选项:

测试,一下,在点击“run code”,果然在终端运行了。

结尾

就这么简单的解决了,感康一下,有些小麻烦,躲来躲去,兜兜转转,最终还是要面对,🥲🥲🥲

真面对了,其实也不难,哇哈哈😄😄😄


附赠,终端乱码问题

如果终端显示乱码,可以检查这几个地方:

汉化插件是否安装了

没装可以安装一个,操作界面就换成中文的了。

重启后,界面菜单什么的,都是中文的了。 

设置VSCode默认编码

打开设置(Ctrl + ,),搜索 Files: Encoding,调整为UTF-8或与文件实际编码一致(如GBK) 

启用 Files: Auto Guess Encoding 以自动识别文件编码。‌

关键操作‌:查看窗口右下角编码格式,如果不对,可以直接点击后,通过“重新打开编码”手动匹配


网站公告

今日签到

点亮在社区的每一天
去签到