当前位置: 首页 > news >正文

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

背景(闲话Trae)

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

问题

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

再现问题

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

 本次检测代码如下:

import sys
import os
import platformdef 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()}")# 环境变量中的PATHprint("\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 以自动识别文件编码。‌

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


http://www.mrgr.cn/news/98781.html

相关文章:

  • 十二种存储器综合对比——《器件手册--存储器》
  • MATLAB 控制系统设计与仿真 - 34
  • Java虚拟机(JVM)平台无关?相关?
  • 22、字节与字符的概念以及二者有什么区别?
  • 《Java 并发编程实践》阅读笔记(一):线程重要性
  • 【教学类-102-13】蝴蝶外轮廓03——Python三色图修图代码+制作230灰度的蝴蝶描线图(可以改变描边线条的灰色深浅度)
  • C++编译与链接:从源码到可执行文件的魔法之旅(Visual Studio实践)
  • android如何在生产环境中做到详实的日志收集而不影响性能?
  • 线性回归 (Linear Regression) 多项式回归 (Polynomial Regression)
  • Qt GUI 库总结
  • 批量上传OpenStack镜像
  • 鬼泣:远程攻击
  • MCP理解笔记及deepseek使用MCP案例介绍
  • 关于C语言的模拟物理模型
  • 12孔AG调陶笛音域全解析:从E4到C6的演奏艺术
  • 在高数据速度下确保信号完整性的 10 个关键策略
  • 林纳斯·托瓦兹:Linux系统之父 Git创始人
  • 面试情景题:企业内部系统如何做微前端拆分,如何通信?
  • java 多线程之Worker Thread模式(Thread Pool模式)
  • CS144 Lab0实战记录:搭建网络编程基础