码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • VScode在服务器上远程调试python代码的工作目录问题


    背景:
    当前很多写代码都习惯使用相对路径,即以当前的py文件为工作目录去寻找其他的py文件。所以如果工作目录不是以当前的py文件为起始的话,这将导致去跑一些开源代码的时候运行不起来。
    现在我遇到的问题就是,在远程服务器上,正常使用终端运行*.py文件,能正常运行。但是在使用vscode远程调试服务器*.py代码时,就会报错。
    原因:
    调试模式运行*.py与终端直接运行*.py的工作目录不同!

    现象描述:在服务器的文件夹形式为:A/B.py、A/C/D.py文件。
    1.现在我需要调试D.py文件,如果直接使用终端进入到D.py文件夹目录,使用python D.py运行它,可以正常运行。(注意:当前的工作空间就是python的工作目录。)
    2.而如果我使用vscode的调试模式去运行D.py,由于代码中有很多的相对路径去找其他的py文件,所以现在跑不通了。(由于vscode本身的设定,工作目录默认为根目录(即A目录下),导致一些开源代码以D.py为定位写的相对位置代码跑不通。)

    所以现在我需要修改调试模式的工作目录路径与正常运行的工作目录一致即可!

    一.工作路径查询

    在*.py文件运行着的时候,运行

    import os
    print(os.getcwd())
    
    • 1
    • 2

    就可以查询到当前python的工作目录。

    二.vscode调试模式的工作目录设定

    上面说了,直接运行*.py的话是可以正常运行的。所以说直接在调试模式下,去设定工作目录与正常运行的工作目录相同即可。

    example:下面举一个例子:

    我的工作目录如下,1是工作空间的根目录,我想要调试的是2处的train.py文件:
    在这里插入图片描述
    在运行train.py文件的情况下,我使用了上面的命令分别查询了调试模式和正常模式运行的工作目录。
    正常模式
    在这里插入图片描述调试模式
    在这里插入图片描述
    也即调试模式的python工作目录比直接运行train.py的工作目录少了一个*/ThreeDMatch,添加上即可。如何添加?
    在launch.json文件中加入以下一行即可。
    在这里插入图片描述

  • 相关阅读:
    失眠睡不着如何调理
    自定义springboot-start
    计算机竞赛 深度学习 opencv python 公式识别(图像识别 机器视觉)
    Casper Network(CSPR)即将迎来两项重大升级,以实现功能上的进一步完善
    Android性能优化——卡顿优化
    课时01 TOGAF9.2导入- 课前介绍-课程介绍
    【LeetCode刷题(数据结构与算法)】:将二叉搜索树转化为排序的双向链表
    H5页面在ios上文本框不能输入
    计算机毕业设计之java+javaweb的面向社区健康服务的医疗平台
    中小学生使用全光谱台灯对眼睛好不好?2023口碑好的护眼台灯推荐
  • 原文地址:https://blog.csdn.net/qq_42537872/article/details/132841947
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号