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

vscode python相对路径的问题

vscode python相对路径的问题

最近使用使用vscode连接wsl2写python时,经常遇到找不到包中的方法的问题,最终发现vscode在执行python代码时目录不是从当前python文件开始算起,而是从当前工作区的目录开始算起,比如说我打开的是/home/lenovo/code,在我的code目录下有一个py_learn文件夹下有geometry.py main.py 两个文件

geometry.py

# geometry.py
def area_circle(radius):
    return 3.14159 * radius ** 2

class Rectangle:
    def __init__(self, length, width):
        self.length = length
        self.width = width
    
    def area(self):
        return self.length * self.width
    
PI = 3.14159

main.py

# main.py
import geometry
# 使用函数
print(geometry.area_circle(5))  # 78.53975

# 使用类
rect = geometry.Rectangle(4, 3)
print(rect.area())  # 12

默认情况下,会说geometry模块没有area_circle方法,这是因为python默认是从/home/lenovo/code寻找的geometry而不是/home/lenovo/code/py_learn中寻找,如果想让python程序执行时,默认从当前py文件的路径下开始寻找

可以配置vscode的launch.json文件

  1. 打开调试面板(Ctrl+Shift+D)。

  2. 点击“创建 launch.json 文件”。

  3. 修改或添加以下内容:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "cwd": "${fileDirname}"  // 设置为脚本所在目录
        }
    ]
}

这样每次执行py程序就会从当前的py文件的目录开始算起

http://www.dtcms.com/a/69787.html

相关文章:

  • 基于 Verilog 的数字电路设计与仿真:乘数器与多路复用器实践
  • LVGL第三方库的使用(中文库)
  • windows协议不再续签,华为再无windows可用,将于四月发布鸿蒙PC
  • Vue3 开发的 VSCode 插件
  • 996引擎 - 红点系统
  • 前端面试题---vue项目打包时, 内存不足了怎么办 为什么会出现这样的情况
  • SpringBoot事件驱动
  • 翻硬币问题
  • 【Docker compose】neo4j容器安装apoc插件
  • 医疗送药机器人“空间拓扑优化+动态算法决策+多级容错控制”三重链式编程技术解析与应用
  • 【WiFi 7核心技术及未来挑战】
  • 搭建刷题专业版小程序系统
  • 【机器学习chp13--(上)】人工神经网络(MLP结构 + KAN结构 + 卷积神经网络)
  • AI Agent 时代开幕-Manus AI与OpenAI Agent SDK掀起新风暴
  • 4.2 Reactive 对象的深度类型约束方案
  • 婚恋之红娘相亲小程序开发功能与设计详解
  • 福特售后再添亮点,为烈马模块化车身改装提供专业支持
  • Qt运行xxx.so can not open shared object file
  • MacOS 上使用终端彻底格式化 U 盘
  • 介绍HTTP协议基本结构与Linux中基本实现HTTPServer
  • 如何取消GitHub Copilot订阅付费?
  • 非零初始条件系统的传递函数分析
  • Kafka的零拷贝
  • 推荐系统基础
  • 【2025】基于python+django的驾校招生培训管理系统(源码、万字文档、图文修改、调试答疑)
  • linux 命令 tree
  • 神经网络:定义与核心原理
  • 【Python】08、元组
  • 工程化与框架系列(35)--前端微服务架构实践
  • 递归时间复杂度(master),时间复杂度为O(NlogN)的排序