代码开发与环境管理工具汇总

在其他配置相关的文章中使用过的工具不再重复记录,这里记录一些新使用的工具,后续相关信息都在此处汇总

python相关

uv

uv官方文档
相比conda、pip,uv的优势在于使用rust开发,配置包时速度更快。常见用法记录如下:

  1. 安装uv并配置环境变量
1
2
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
set PATH=%PATH%;%USERPROFILE%\.uv\bin
  1. 初始化当前项目用uv init,新项目用uv init project_name,会自动创建pyproject.toml和git管理项目:
1
2
3
4
5
.
├── .python-version
├── README.md
├── main.py
└── pyproject.toml
  1. 第一次运行uv run, uv sync, or uv lock等命令时会自动生成:
1
2
3
4
5
6
7
8
9
10
.
├── .venv
│   ├── bin
│   ├── lib
│   └── pyvenv.cfg
├── .python-version
├── README.md
├── main.py
├── pyproject.toml
└── uv.lock

source .venv\Scripts\activate激活虚拟环境
4. 安装依赖包uv add package_name,更新依赖包uv update package_name,删除依赖包uv remove package_name,使用此种方式安装包会自动更新uv.lock和pyproject.toml文件
5. 使用uv sync会自动同步pyproject.toml、uv.lock文件中的依赖包版本到虚拟环境,并删除不相干的依赖包,pyproject.toml文件中的依赖包支持手动更改。
6. 使用uv run python_file.py运行python文件,会自动调用相关环境。
7. 使用uv builduv publish发布项目,会自动生成wheel包,上传到pypi或其他镜像源。
相关命令和其他用法具体参考官方文档:https://docs.astral.sh/uv/

ruff

ruff官方文档
ruff 是一个可用来格式化python文件的工具,可以自动格式化包导入、格式化代码、修复代码、检查代码规范等,也是rust开发,速度快、易用。
在vscode中安装ruff插件,并在settings.json中配置ruff:

1
2
3
4
5
6
7
8
9
"[python]": {
"editor.formatOnType": true,
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.codeActionsOnSave": {
"source.fixAll": "explicit",
"source.organizeImports": "explicit",
}

},

上述配置会在保存时自动格式化代码,ctrl+shift+P调出命令面板,使用ruff fix命令自动修复代码,使用ruff imports命令自动格式化包导入,使用ruff documen命令格式化整个文档。