vscode使用

相对路径、调试路径问题

相对路径和py中模块的导入问题看sys.path
运行和调试问题主要看终端运行代码时的路径(+终端中的路径)

问题:
运行:在输出中执行时会无法导入已经安装的库,在终端中执行时默认目录是在终端中进入的目录
调试:

1

import os
print('Current Working Directory:',os.getcwd())#查看当前路径,即终端中的路径

os.getcwd() 返回的是当前的工作目录(Current Working Directory, CWD),即程序执行时从哪个目录启动的。这个目录通常决定了相对路径的基准点,也就是当你在代码中使用相对路径时,文件会基于这个目录进行查找。调试或运行时的工作目录

import sys
print("Python Module Search Paths:", sys.path)

sys.path 是一个列表,包含 Python 解释器用来搜索模块的路径。也就是说,当你使用 import 语句导入模块时,Python 会按照 sys.path 中的路径顺序查找模块。
使用场景: 如果你想知道 Python 在运行时会到哪些目录去查找模块(包括你自己编写的模块和标准库模块),可以查看 sys.path。这包括当前工作目录、安装的包、以及其他配置的路径。

如果想导入的包不在sys.path的路径中,可以用如下代码手动添加

import sys
sys.path.append("需导入模块所在的目录")

2

调试代码时
launch.json 是vscode用于调试的配置文件,比如指定调试语言环境,指定调试类型等等。
在 launch.json 文件中,通常有一个 “cwd” 属性,它决定了调试时使用的工作目录。{fileDirname} 表示当前文件所在的目录。如果没有显式设置 “cwd”,VSCode 通常会使用项目的根目录或某些默认路径作为工作目录。
先点击左侧调试,并创建josn文件,然后在josn中添加"cwd": "${fileDirname}"即可。

但如果你的 launch.json 文件中有 “console”: “integratedTerminal”,它会将调试程序在 VSCode 的集成终端(Integrated Terminal)中运行。在这种情况下,os.getcwd() 可能会继承终端的当前工作目录(即你在终端中打开的路径),而不是你指定的 “cwd”: “${fileDirname}” 路径。
集成终端的工作目录 是指你打开终端时的默认路径,通常是项目的根目录或你上次所在的路径(我觉得就是终端中显示的路径)。如果你通过终端手动更改了路径,那么 os.getcwd() 会返回这个路径,而不是你在 launch.json 中指定的路径。

解决方法: 你可以尝试将 “console” 设置为 “internalConsole”,这样调试器将不依赖集成终端,而是在 VSCode 的调试控制台中运行,工作目录将按照你在 launch.json 中设置的 “cwd”: “${fileDirname}” 来运行。

设置完

"console": "internalConsole"
"cwd": "${fileDirname}"

运行代码时,要在终端进入运行代码所在的文件夹再运行。

导入其他py文件中的模块

在gen_role.py中导入父目录下config.py和DataGen.prompts中的内容:需进入src目录下
在这里插入图片描述

连接远程服务器和image下的容器

1、先连接远程服务器
2、在终端中激活container:启动容器:docker start id;进入容器:docker exec -it id /bin/bash
(查看自己容器id(刚刚创建的,通过创建时间确认):docker ps -a)
3、在vscode中附件加container内容![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/add111ac902b45b9b9de95fe2d5c4fc4.png

连接远程服务器:
在这里插入图片描述
连接完服务器后连接容器:
在这里插入图片描述
进一步在资源管理器里打开workspace文件夹

快捷键 Ctrl + C 来中断正在运行的程序或终端进程

使用临时环境变量

在powershell中输入$env:DASHSCOPE_API_KEY=“sk-34282f0cfb16”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值