文章目录
- 类和对象
- 依赖管理
- requirements.txt 文件格式
- 本地虚环境
- 创建虚拟环境
- 手动激活虚拟环境
- 本地包安装
- uv 使用方法
类和对象
引用方式:
import 另一个文件名
from 另一个文件名 import 类名
假设同级目录下有一个文件:my_classes.py
my_classes.py 中定义了一个类:class MyClass: …
新文件(比如 main.py)中:
importmy_classes obj=my_classes.MyClass()frommy_classesimportMyClass obj=MyClass()依赖管理
python 的依赖管理比较多和混乱,最初的使用比较多的requirements.txt 到 统一的 pyproject.toml;
requirements.txt 文件格式
package_name # 安装最新版(不推荐,因为结果不确定)
package_name==1.2.3 # 精确指定版本
package_name>=1.2,<2.0 # 版本范围
package_name~=1.2.3 # 兼容版本(约等于 >=1.2.3, ==1.2.*)
作用:依赖环境统一,类似java的pom.xml
使用方式:
pip install -r requirements.txt已有项目生成requirements.txt命令:
pip freeze > requirements.txt后面改用:pyproject.toml 文件管理依赖
uv、Poetry、PDM 都是依赖管理工具,但是它们的使用方式和功能略有不同。uv 是一个简单的依赖管理工具,而 Poetry 和 PDM 则是更复杂的工具,支持更多功能。
本地虚环境
本地虚拟环境下依赖独立,pip install 安装是全局安装,创建本地虚拟环境则依赖独立的一个干净的环境,防止依赖的库冲突;
创建虚拟环境
python -m venv .venv手动激活虚拟环境
.venv\Scripts\activate原理是:
import sys,pprint
pprint.pprint(sys.path)
就是修改了sys.path,添加了.venv\Lib\site-packages目录
本地包安装
pip install -e .
原始虚拟环境操作步骤:
# 创建虚拟环境 python -m venv .venv # 激活虚拟环境 .venv\Scripts\activate # 安装包相关依赖管理 pyproject.toml # 安装依赖 pyproject.toml 的依赖 pip install -e .uv 使用方法
安装uv:
powershell-ExecutionPolicy ByPass-c"irm https://astral.sh/uv/install.ps1 | iex"验证uv安装情况:
cmd直接输入:uv
项目使用uv管理虚拟环境相关依赖:
1.要有pypoject.toml文件(初始只保留基础的name,versino,description节点)
示例:
[project] name = "周报工具" version = "1.0.0" dependencies = [ ]2.使用 uv add 依赖名称
如果是已有项目的源码则执行:uv sync
uv python list — 列出uv支持的python版本
uv python install cpython3.12 — 安装某个python版本 (3.12)
uv run -p 3.12 xxx.py — 使用特定版本python运行xxx.py
uv run -p 3.12 python — 运行python交互界面
uv run xxx.py — 使用系统python或当前工程的虚拟环境运行xxx.py
uv init — 创建工程
uv add pydantic_ai — 添加依赖 (pydantic_ai)
uv tree — 打印依赖树
uv remove pydantic_ai — 删除依赖
uv build — 编译工程