Pycharm中的项目迁移至VS code中遇到的一些问题及解决方法

最近在做一个项目,需要Python、golang、vue三种技术相互协调,最开始开发的时候为了节省环境搭建时间直接使用了Pycharm集成开发环境,前期是省去了很大的麻烦,当将三端代码合到一块的时候遇到了不小的问题,网上解决方法很少,现在进行一下记录,方便后续回看。

1.python的导包机制(ModuleNotFoundError: No module named)

内建模块:

Python 首先检查模块是否属于内建模块(如 sys、math 等)。

sys.path 列表:

如果不是内建模块,Python 接着查看 sys.path,这是一个目录字符串的列表,它定义了 Python 解释器搜索模块的路径。

sys.path 包含以下部分:(也就是导包的时候会搜索以下几个位置)

  • 当前目录(或脚本运行的目录,即 os.getcwd() 的返回值)。
  • PYTHONPATH 环境变量(如果设置了的话)中指定的目录。这是一个环境变量,可以用来添加额外的目录,让 Python 在这些目录中搜索模块。
  • 标准库目录,Python 安装时自带的库和模块所在的目录。
  • 任何第三方包目录,通常这些包安装在 site-packages 目录中。

导包顺序:内建模块>缓存的已编译模块(.pyc 文件)>sys.path 列表

包的初始化:
如果导入的是一个包(即包含 init.py 文件的目录),Python 将导入包的 init.py 文件并查看是否有进一步的模块导入。

导包导不进来只能在编辑器的插件中进行配置,可以如果是VScode的python插件可以按照下面步骤操作:
第一步打开python插件的配置文件
在这里插入图片描述
第二步在配置文件中添加以下代码(linux系统把windows替换一下):

    "terminal.integrated.env.windows": {
      "PYTHONPATH": "${workspaceFolder}/Classifier/",
      # 解释一下workspaceFolder是你的工作路径,也就是打开项目的根
      # /Classifier/是你期望python去哪里找你自己定义的包
    }

2.相对路径导入机制(..\****路径下的文件不存在)

相对路径的导入一般依赖于集成开发环境,VScode一般会被设置为已打开项目的根目录。Pycharm有成熟的管理机制,一般与使用相对路径的文件有关(用户不用过度关心)。

在VScode中相对路径的出发点是打开项目的根(这个路径就是python脚本的工作目录),可以使用os.getcwd()获取到,可以os.chdir()进行修改,修改之后就可以正常的使用相对路径导入文件了

在这里插入图片描述
下面是整理好的代码(添加到程序入口文件):

# 设置新的工作目录
new_directory = os.getcwd()+"/Classifier"
try:
    # 更改当前工作目录
    os.chdir(new_directory)
    print(f"当前工作目录已更改为: {os.getcwd()}")
except OSError as error:
    print(f"无法更改工作目录: {error}")

项目迁移成功,服务端启动
在这里插入图片描述
客户端调用
在这里插入图片描述

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷尔。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值