一、Python环境、Jupyter、Pycharm与Conda
安装Python
由于RAG项目中所需要的Python版本必须高于3.8,经过筛选,最终选择了3.10.11这个版本
py --version
Python 3.10.11
安装过程略过,但对于几个基础的命令作个笔记记录
- where python
找到python启动器的位置
D:\>where python
C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\python.exe
- py -0
py -0 这个命令可以在有多个版本的Python的情况下,查看Python启动器默认执行的是哪个版本(带 * 标记的这个就是默认版本),多个版本的情况下,如果想改变Python启动器的默认版本,有两种方式:1、设置环境变量 PY_PYTHON=3.10 ;2、改配置置文件 %LOCALAPPDATA%\py.ini
D:\>py -0
Installed Pythons found by py Launcher for Windows
-3.10-64 *
Python启动器的默认执行版本与环境变量PATH中的Phthon版本设定问题:
两者并不是同步的,因为Python启动器用的python版本并不依赖于PATH环境变量。
- pip命令
pip命令最常见的用法就是安装依赖工具包
D:\PythonWorkspace\wow-rag\rag-venv>pip install fastapi
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/
Requirement already satisfied: fastapi in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (0.116.1)
Requirement already satisfied: starlette<0.48.0,>=0.40.0 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from fastapi) (0.47.1)
Requirement already satisfied: typing-extensions>=4.8.0 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from fastapi) (4.14.1)
Requirement already satisfied: pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from fastapi) (2.11.7)
Requirement already satisfied: typing-inspection>=0.4.0 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi) (0.4.1)
Requirement already satisfied: annotated-types>=0.6.0 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi) (0.7.0)
Requirement already satisfied: pydantic-core==2.33.2 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi) (2.33.2)
Requirement already satisfied: anyio<5,>=3.6.2 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from starlette<0.48.0,>=0.40.0->fastapi) (4.9.0)
Requirement already satisfied: sniffio>=1.1 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from anyio<5,>=3.6.2->starlette<0.48.0,>=0.40.0->fastapi) (1.3.1)
Requirement already satisfied: idna>=2.8 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from anyio<5,>=3.6.2->starlette<0.48.0,>=0.40.0->fastapi) (3.10)
Requirement already satisfied: exceptiongroup>=1.0.2 in d:\pythonworkspace\wow-rag\rag-venv\lib\site-packages (from anyio<5,>=3.6.2->starlette<0.48.0,>=0.40.0->fastapi) (1.3.0)
Note: you may need to restart the kernel to use updated packages.
有多个版本的Python时,可以用py命令带上版本号来对指定的版本安装依赖包,例:
py -3.10 -m pip install langchain
安装 langchain 包到 Python 3.10 的环境中
Python的虚拟环境
虚拟环境是一个 独立的 Python 环境目录(包含解释器、pip、安装包等),本质是一个文件夹,在实际项目中,对每个项目单独创建一个虚拟环境是有重要意义的,这可以让每个项目所依赖的包与其他项目的依赖包进行隔离,避免工具包的版本冲突导致的各种问题。
虚拟环境通常在项目的根目录下创建,用命令行创建一个虚拟环境的示例(rag-env是虚拟环境的目录):
py -3.10 -m venv rag-env
虚拟环境的激活:在 rag-env\Scripts 目录下执行active.bat (必须CMD窗口执行),关闭就是执行 deactive.bat
重要:安装项目依赖的工具包之前激活该项目的虚拟环境,避免工具包未正确安装导致运行代码的时候出现报错:
ModuleNotFoundError: No module named 'pandas'
一旦你激活了某个虚拟环境,后续在该命令行中执行的所有 Python 相关命令(如 python, pip, conda, pytest 等),都是作用在这个被激活的虚拟环境中的。
一个命令行窗口只能管理一个虚拟环境的状态(激活/关闭),命令行窗口关闭后,激活的虚拟环境会自动关闭。想要管理多个虚拟环境的状态,可以开多个命令行。
注:使用PyCharm创建一个项目可以指定的策略来为项目创建一个新的虚拟环境,且在PyCharm中运行Python程序的时候不需要手动激活虚拟环境,PyCharm会帮用户做这件事。
Jupyter与Jupyter Book
Jupyter适用于做Python的小实验,比用PyCharm更简洁方便。使用Jupyter需要的前提条件是:
1、安装Python
2、在项目的根目录下创建该项目的虚拟环境,例:py -3.10 -m venv rag-venv
3、已激活虚拟环境(命令行前缀显示虚拟环境的目录名,如: rag-env)
(rag-venv) C:\Users\YourName\YourProject>
安装Jupyter的步骤
1、(建议)使用阿里的镜像源,提高下载速度
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
2、安装Jupyter
pip install notebook
3、确认已装好
jupyter --version
4、启动Jupyter(在虚拟环境中执行)
jupyter notebook
浏览器中打开 http://localhost:8888,这是 Jupyter 的控制面板,你可以:
-
新建一个 Notebook(点击右上角
New→ 选择 Python 3.10 环境) -
编写代码,运行、保存等
5、退出 Jupyter 后,如果不再工作,可关闭虚拟环境(执行 \Scripts目录下的 deactive.bat)
在 Jupyter Notebook 中,界面是由一个个可以运行代码或写文字的“格子”(单元格,ode cell)组成的。每个格子可以:
-
输入一段 Python 代码
-
按下
Shift + Enter运行这段代码 -
结果会显示在格子下方
-
你可以随时插入新格子、删除、复制、重新运行等
你可以在Jupyter Notebook中写python 代码、调试、展示结果等操作。比命令行好用,比PyCharm方便。
每个代码格子都要单独运行,才能执行其中的代码,除非你选择了批量执行(比如,菜单栏中执行 Restart & Run All,这会重骑Python的环境并按顺序运行所有的代码格子)。
Pycharm
与IDEA同为JetBrains下的产品,因此,很多设计特点可以参照IDEA来对标。
与IDEA一样,免费使用的版本为社区版(Community),本次安装的版本为 PyCharm Community 2023.3.5,安装过程略。
首次启动时的几个设置:
-
Import Settings:
-
选择 Do not import settings(针对首次使用者)。
-
-
UI 界面主题选择:
-
推荐选择 Darcula(深色) 或 Light(浅色),可随时更改。
-
-
插件推荐(可跳过)
项目与虚拟环境
与IDEA中对Java的版本设置相似,PyCharm中也可以设置全局Python的版本,但是不建议设置全局共享的Python解释器,因为这样很容易造成依赖冲突。


因此,对每个项目构建一个该项目的虚拟环境是实际项目中规范的做法。
新建项目的示例:
-
File→New Project:Interpreter Type 选 Custom enviroment

这样就可以在创建项目目录的同时,在项目的目录下构建该项目的虚拟环境。
在虚拟环境的目录里,可以看到有一个python.exe,在 项目文件夹\虚拟环境文件夹\Scripts\ 这个目录下,这是系统安装的Python(多版本的话指向的是默认版本)的一个副本,副本的意思是基于系统安装的Python复制必要的解释器文件,并创建一个独立的依赖空间(包的安装路径、sys.path 等都被重定向到了虚拟环境下的 Lib/ 和 Scripts/ 目录)。这样的话,在这个虚拟环境中装包、运行脚本,不会影响或依赖全局安装。
这里可以类比 Docker来理解:
| 虚拟环境机制 | Docker 概念类比 |
|---|---|
python.exe + Lib | 镜像的运行时 |
| 虚拟环境目录结构 | 容器文件系统 |
Scripts/activate | 启动入口(类似 entrypoint) |
| pip install 的包 | 容器内的依赖 |
用Conda构建虚拟环境
Conda 是一个跨平台的包管理 + 环境管理工具,类似于 pip + virtualenv 的合体,而且不限于 Python 包。
| Conda的能力 | 作用 |
|---|---|
| 📦 包管理 | 安装、卸载、更新第三方库(不只是 Python 库) |
| 🌍 环境管理 | 创建、切换、隔离多个 Python 环境(或其他语言环境) |
| 🏗️ Python 版本管理 | 每个环境可以使用不同版本的 Python |
| 💼 支持非 Python 包 | 可安装 C/C++ 编译的科学计算包(如 numpy、pandas、opencv 等)而不需你配置编译器 |
与前面的创建虚拟环境的方式相比,使用Conda最大的优势是支持非Python包的安装与管理
Conda有两个版本,Anaconda和Miniconda,以下是这两个版本的对比
| 特性 | Anaconda | Miniconda |
|---|---|---|
| 📦 包含内容 | Python + Conda + 300+ 常用数据科学包 + Navigator GUI | 仅 Python + Conda + 少量基础依赖(轻量命令行版) |
| 🛠 安装体积 | ≈ 4 GB,安装后环境庞大 | 约 480 MB,下载快,安装轻便 |
| 🧰 适用人群 | 希望开箱即用,零配置即可使用数据科学工具 | 想控制包安装,节省空间,只安装所需包 |
| 🛠 包管理方式 | GUI + CLI(conda install) | 纯命令行(conda install) |
| 📡 非 Python 包支持 | 支持 C/C++ 库、R 等 | 同 Anaconda(都使用 Conda 包管理) |
| ⚙️ 包更新频率 | 默认 conda 通道中包更新较慢 | 轻量,建议通过 conda-forge 或 mamba 加速 |
这里选用Anaconda,因为这对初学者更友好一点。
Anaconda的对虚拟环境的创建有两种方式:
| 方式 | 命令 | 环境位置 | 适用场景 |
|---|---|---|---|
| 方式 A:命名环境法(命名环境拨法) | conda create -n myenv python=3.10 | ➤ 一个统一的目录,如:Anaconda 的目录:…/anaconda3/envs/myenv/ | ✅ 推荐用于多个项目共享某个环境,统一管理 |
| 方式 B:路径方式(项目内环境) | conda create -p ./venv python=3.10 | ➤ 在项目的目录下创建,如 ./venv/ | ✅ 推荐用于项目内绑定,方便迁移、开源 |
两种方式的区别可简单理解为:虚拟环境的安装位置一个在统一的目录里(比如Anaconda下的目录),另一个在项目的目录里,使用PyCharm新建项目的时候分别在不同的虚拟环境目录下选择python解释器(后面的详细步骤也会提到),核心区别的详细对比如下:
| 特性 | 命名环境(-n myenv) | 路径环境(-p ./venv) |
|---|---|---|
| 📁 环境放在哪里 | 系统集中目录(如 anaconda3/envs/) | 项目目录下(如 ./venv/) |
| 🔄 是否推荐复用 | ✅ 支持复用(多个项目可用) | ❌ 项目独占,不复用 |
| 🧳 可迁移性 | ❌ 环境与项目分离(不便迁移) | ✅ 项目打包带走环境更方便 |
| 🛠 开发效率 | 快速使用已有环境,无需重复安装 | 需要每次创建、安装依赖 |
| 🤝 团队协作 | 不易同步环境,需导出 .yml | 配合环境文件更清晰可控 |
| 📦 PyCharm 支持 | 自动识别,配置简单 | 需手动指向解释器路径 |
安装Anaconda
安装包建议通过清华镜像源获取: Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
版本推荐:Anaconda 2023.07 版本及以后的版本均支持 Python 3.10
或是官网下最新的版本: Download Success | Anaconda
Anaconda Distribution 是社区免费版(也是完整版),但不要下载 MiniConda(迷你版)
安装过程注意事项
1、安装类型:推荐选择 “Just Me”(仅限当前用户,避免权限问题与安全问题),无需管理员权限。
2、安装路径避免包含空格或特殊字符,以防与某些工具不兼容
3、自定义安装选项:
-
Add Anaconda3 to my PATH environment variable:不勾选,以避免潜在的环境变量冲突。
-
Register Anaconda3 as my default Python 3.13:不勾选,避免“系统默认 Python”被替换,方便后期管理多个 Python 版本。
-
Install Microsoft VSCode:可选,如果你喜欢使用 VSCode 进行开发,可以勾选此项
4、验证安装成功:
-
打开 Anaconda Prompt:在开始菜单中搜索并打开 Anaconda Prompt。
-
检查 Conda 版本:
conda --version ,出现版本信息则表示安装成功
如果显示类似 conda 23.3.1 的版本信息,说明 Conda 安装成功。
使用 conda 命令前先激活虚拟环境
conda activate myenv
这样做的好处:
✅ 1. 互不干扰
-
你的系统 Python 3.10.11 继续作为默认,不会被 Anaconda 影响。
-
虚拟环境里的 Python、包、路径是独立的,运行和安装都更安全。
✅ 2. 按需定制环境
-
想用哪个 Python 版本就建一个环境,例如:
conda create -n py310 python=3.10 -
想装什么包只装在这个环境里,不污染系统。
✅ 3. 适合开发、测试多个项目
-
不同项目用不同环境,互不冲突。
-
比如你一个项目用 Python 3.10,另一个项目用 Python 3.9,conda 都可以搞定。
✅ 4. 更易管理与维护
-
出现问题只删掉那个环境就行了,不影响其他项目。
-
环境备份和迁移也方便(可以导出
environment.yml)。
退出Conda
conda deactivate
使用Anaconda创建项目的步骤描述
1、创建项目目录
# 创建项目目录
mkdir MyProject && cd MyProject
# 创建目录结构
mkdir app tests
echo > README.md
echo > app/main.py
echo > app/__init__.py
echo > tests/test_main.py
2、创建Conda虚拟环境(这里用“命名环境法”)
# 创建环境(可自定义名称和版本),版本号用3.10即可,不需要更精确的版本号
conda create -n myproject_env python=3.10
# 激活环境
conda activate myproject_env
# 安装开发常用包
conda install pytest
# 如果用 pip 也可以混合使用
pip install requests
3、在 PyCharm 中打开项目并配置解释器
-
打开 PyCharm →
Open→ 选择你的项目目录(如D:\Projects\MyProject) -
菜单栏:
File → Settings → Project → Python Interpreter -
添加解释器:选择
-
Conda Environment → Existing Environment -
指向:
...\anaconda3\envs\myproject_env\python.exe
-
4、设置项目入口
-
右键
main.py→Mark as Entry Point(或者设置运行配置) -
或在顶部菜单选择:
-
Run → Edit Configurations → + → Python
-
Script path 选
app/main.py -
Name 起个名字
Run App -
Interpreter 选你刚配置的 Conda 解释器
-
Apply → OK
-
5、设置 app/ 为源码目录(非常重要)
右键 app/ → Mark Directory as → Sources Root
这样导入 from utils import xxx 就不会报错。
6.、导出 environment.yml(可选,但推荐)
将当前环境依赖导出成配置文件:
conda env export --from-history > environment.yml
这样你可以:
-
保留环境快照
-
迁移到新机器时
conda env create -f environment.yml即可重建
最终实现的项目目录结构如下:
MyProject/
├── .idea/ ← PyCharm 配置(自动生成)
├── app/ ← 源代码
├── tests/ ← 测试
├── README.md
├── environment.yml
用conda安装好的虚拟环境如何删除
不要直接手动删除文件夹!按如下步骤进行:
查看现有环境:
conda env list
删除某个虚拟环境(例如叫 myenv)
conda remove -n myenv --all
参数意义:-n myenv 表示指定环境名,--all 表示删除环境下所有内容
顺便看下这些路径
C:\Users\你的用户名\anaconda3\envs\
删除命令执行后,这个文件夹下对应环境的目录就没了。
更多推荐


所有评论(0)