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

Visual Studio 2022中Ctrl+F5运行Python代码异常求助

问题:VS2022中Python代码F5调试正常,但Ctrl+F5运行异常

我使用Visual Studio 2022 17.5.5版本,编写了如下Python代码:

with open('routers.txt', 'r') as routers_txt:
    router_line_list = routers_txt.read().splitlines()

print(router_line_list)

for router_line in router_line_list:
    print(router_line)
for router_line in router_line_list:
    print('a')

routers.txt文件内容如下:

Name,802.11 Specification,Memory,Price
NetEdge X12,Wi-Fi 6,64 MiB,199.99
StreamLink AC10,802.11ac,512 KiB,$89.99
AirTech XL,ax,1 MiB,54.99
LinkWave N2,802.11n,2 GiB,149.99
WiZone 5000,Wi-Fi 5,16 MiB,79.99
UltraWave AC8,802.11ac,2048 KiB,119.99
FastLink AC4,ac,4 MiB,179.99
WaveSwift X20,802.11ax,32 MiB,69.99
MaxNet 8000,WiFi 6,8 MiB,249.99
SwiftWave AX20,ax,2 MiB,39.99
AirConnect X16,Wi-Fi 6,128 MiB,299.99
NetStream AX1,802.11ax,1024 MiB,129.99
SwiftLink 400,ax,512 KiB,79.99
TechPro N6,802.11n,4 GiB,199.99
NetWave 3000,WiFi5,32 MiB,109.99
AirLink AC2,802.11ac,4096 MiB,$149.99
MaxWave AC12,ac,16 MiB,229.99
StreamX AX5,802.11ax,8 MiB,99.99
SwiftNet X10,Wi-Fi 6,4 GiB,349.99
NetLink AX3,ax,48 MiB,59.99

使用F5调试时一切正常,但按下Ctrl+F5运行时出现异常。我尝试升级到Visual Studio 2022 17.6.2版本并恢复软件,之后又回滚到17.5.5版本,问题仍未解决,请问这是什么原因?


原因分析与解决办法

这种情况大概率是工作目录不一致导致的:

  • F5调试模式下,VS默认会把项目根目录作为Python脚本的工作目录,此时脚本能正常找到同目录下的routers.txt
  • Ctrl+F5直接运行时,VS可能会将脚本所在子目录或系统默认路径作为工作目录,脚本找不到文件就会抛出FileNotFoundError

验证步骤

在代码开头添加以下代码,分别用F5和Ctrl+F5运行,对比输出的工作目录:

import os
print("当前工作目录:", os.getcwd())

解决办法

  • 统一工作目录:右键项目 → 属性 → 调试选项卡,将「工作目录」设置为项目根目录(和调试时的路径一致)
  • 使用绝对路径:获取脚本所在目录的绝对路径,再拼接文件名,示例:
    import os
    script_dir = os.path.dirname(os.path.abspath(__file__))
    file_path = os.path.join(script_dir, 'routers.txt')
    with open(file_path, 'r') as routers_txt:
        router_line_list = routers_txt.read().splitlines()
    
  • 调整文件位置:根据Ctrl+F5运行时打印的工作目录,将routers.txt复制到该路径下

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 12:54:56