vscode调试
如何配置自定义调试:在工作目录的.vscode/launch.json
的"configurations"
列表中,新起一个调试配方。
重点属性如下:
"configurations": [
{
"justMyCode": true, //改成false, 调试时可跳转到第三方库中
"cwd": "${workspaceFolder}", //可自定义工作目录
"args": [ //用于python命令带参数的情况
"-c", "configs/yolov5/yolov5_s.yml",
"--infer_img", "demo/mangrove_demo.tif",
"--output_dir", "infer_output/"
],
"env": { // 在这里设置环境变量
"CUDA_VISIBLE_DEVICES": "0"
},
}
]
包管理及虚拟环境工具
请转到这里, 有详细教程.
常错语法
packages
性能、命令行、系统相关
argcomplete
用于自动补全命令行参数,支持 argparse 的自动补全功能。
line_profiler
分析每一行代码的执行时间,帮助你精确定位性能瓶颈。内含kernprof
命令行工具.
使用:
- 先导入:
from line_profiler import profile
- 再给你想分析的函数加装饰器
@profile
, 或代码片段上方加with profile:
。 - 最后运行脚本程序:
kernprof -lvr scripts.py --args1 ARGS1
-l
: 逐行给出分析;-v
: 分析输出到终端(同时也会生成.lprof
文件)-r
: 富文本显示-u 1e-6
: 时间单位尺度-z
: 跳过不耗时的行--prof-imports
: (前提得有-l
): 导入的模块里的函数一起分析.
memory_profiler
cffi
一个用于在 Python 中调用 C 代码的库。它提供了一种方便的方式来创建和调用 C 函数和数据结构。
cleo
一个用于构建命令行界面(CLI)应用的库,特别是在 poetry 包管理工具中广泛使用。提供丰富的命令行界面组件,简化 CLI 应用的开发。
另有:click
: 一个用于创建命令行界面的 Python 包,设计简洁且易于使用。
IO类
rich
cryptography
一个提供加密和解密功能的库,基于现代加密标准。支持:
- 加密和解密数据。
- 生成和验证数字签名。
- 管理加密证书和密钥。