安装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,以下是这两个版本的对比

    特性AnacondaMiniconda
    📦 包含内容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、验证安装成功:

    1. 打开 Anaconda Prompt:在开始菜单中搜索并打开 Anaconda Prompt

    2. 检查 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.pyMark 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\

    删除命令执行后,这个文件夹下对应环境的目录就没了。

    Logo

    中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

    更多推荐