pycharm跑python项目易出错的问题

  1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装好了,但是还是识别不到子模块,原因是在创建环境的时候指定了python版本之后,每次pip install 都要强行指定python的版本。不然他有可能自己会跳版本。

最好的方式就是用vscode打开编译项目,然后通过win+R,输入cmd打开终端,进入项目里面,然后进行创建环境安装子模块,就不会出错了

  1. 有可能在pycharm里面,虽然你用cmd的终端切换了环境,比如conda activate env3,但是实际上pycharm里面的环境还是没有改变。你要在pycharm里面通过按钮设置选择正确的环境

或者通过pycharm最右下角的按钮选择

复制代码
# 安装本地的 various_tools
pip install -e ./various_tools

# 安装本地的 dynamic_obstacle_avoidance
pip install -e ./dynamic_obstacle_avoidance

当然还是推荐用vscode,因为vscode右下角能显示所有的环境,但是pycharm有时候只能显示部分的环境。

下面梳理一下一般克隆别人的项目并且创建环境,安装子模块的流程

1.先克隆别人的代码

复制代码
git clone 地址(通过github Code里面HTTPS里面得到地址)

2.要进入你克隆的项目的目录,

3.使用conda创建环境(记住把env_name换成你自己命名的环境名字。python=3.12换成自己的python版本号码

复制代码
conda create -n env_name python=3.12

激活你创建的环境(把env_name换成你创建的环境名字)

复制代码
conda activate env_name

如果想要跳出原来的环境可以用下面的代码

复制代码
conda deactivate
  1. 安装项目环境的依赖

    pip install -r requirements.txt
    pip install -e .

如果某些包安装失败可能是源不行,换成清华源(如果下面每一步都安装失败都可以加入清华源,也可以直接替换conda的源一劳永逸)

复制代码
pip install -r requirements.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
  1. 如果有子模块要安装子模块(子模块其实也就是作者写的要用到的函数文件)

比如下面要安装两个子模块various_tools和dynamic_obstacle_avoidance

复制代码
pip install "git+https://github.com/hubernikus/various_tools.git"
pip install "git+https://github.com/hubernikus/dynamic_obstacle_avoidance.git"

但有时候连不上github,子模块安装失败,可以直接下载zip文件,然后解压,把解压后的文件放到你整个项目的文件夹里面,相当于是作为项目的函数

如果是自己解压的话,那安装子模块的命令就变成下面的(注意要把命令里面的文件名字various_tools和dynamic_obstacle_avoidance换成自己的子模块文件名字)

复制代码
# 安装本地的 various_tools
pip install -e ./various_tools

# 安装本地的 dynamic_obstacle_avoidance
pip install -e ./dynamic_obstacle_avoidance
相关推荐
Learn Beyond Limits3 小时前
Initializing K-means|初始化K-means
人工智能·python·算法·机器学习·ai·kmeans·吴恩达
Wah-Aug3 小时前
PyTorch 模型评估与全局平均池化的应用实践
人工智能·pytorch·python
菠萝吹雪ing3 小时前
pytest中的assert断言
python·pytest
倔强青铜三3 小时前
苦练Python第56天:元类•描述符•异步•Pickle 的 28 个魔术方法——从入门到精通
人工智能·python·面试
倔强青铜三3 小时前
苦练Python第55天:容器协议的七个魔术方法从入门到精通
人工智能·python·面试
伊织code3 小时前
LLM - 命令行与Python库的大语言模型交互工具
开发语言·python·语言模型
春生黎至10053 小时前
Python列表
开发语言·python
愈努力俞幸运4 小时前
socket编程 netstat 大小端 rpc 协程 io yield
网络·python·网络协议·rpc
PieroPc4 小时前
Python基于 Gradio 和 SQLite 开发的简单博客管理平台,支持局域网手机查看,给一个PC和手机 互联方式
python·sqlite·gradio