YOLOv8的Python基础--函数篇
1. 文件/目录操作相关函数
这些函数来自 os
和 shutil
模块:
函数/用法 | 作用 | 示例 | 说明 |
---|---|---|---|
os.listdir(dir) | 列出目录下所有文件名 | os.listdir("./images") | 返回文件名列表(不包含路径) |
os.path.join() | 拼接路径 | os.path.join("dir", "file.txt") | 跨平台安全拼接路径(Windows/Linux兼容) |
os.path.splitext() | 分割文件名和扩展名 | name, ext = os.path.splitext("img.jpg") | 返回 ("img", ".jpg") |
os.path.exists() | 检查文件/目录是否存在 | os.path.exists("label.txt") | 返回 True/False |
os.makedirs() | 递归创建目录 | os.makedirs("dir/subdir", exist_ok=True) | exist_ok=True 避免目录已存在时报错 |
os.path.basename() | 获取路径中的文件名 | os.path.basename("/data/img.jpg") | 返回 "img.jpg" |
shutil.copy(src, dst) | 复制文件 | shutil.copy("a.txt", "backup/a.txt") | 如果目标目录不存在会报错 |
2. 数据处理相关函数
函数/用法 | 作用 | 示例 | 说明 |
---|---|---|---|
random.random() | 生成0-1之间的随机数 | if random.random() < 0.2: | 用于随机分配数据集 |
range(len()) + tqdm() | 带进度条的循环 | for i in tqdm(range(100)): | 显示处理进度(来自tqdm 库) |
3. 代码中未直接使用但导入的库
虽然导入但未实际使用的库及其典型用途:
-
cv2
(OpenCV):图像读取/处理(如cv2.imread()
) -
matplotlib.pyplot
(plt):数据可视化(如plt.plot()
) -
numpy
(np):数值计算(如np.array()
)