跳到内容

os-path-getsize (PTH202)

添加于 v0.0.279 · 相关议题 · 查看源码

派生自 flake8-use-pathlib linter。

有时提供修复。

作用

检查是否使用了 os.path.getsize

为什么这不好?

os.path 提供的较低级 API 相比,pathlib 为路径操作提供了高级 API。

在可能的情况下,使用 Path 对象方法(例如 Path.stat())相比 os.path 模块中的对应方法(例如 os.path.getsize())可以提高可读性。

示例

import os

os.path.getsize(__file__)

建议改为

from pathlib import Path

Path(__file__).stat().st_size

已知问题

虽然使用 pathlib 可以提高代码的可读性和类型安全性,但与直接使用字符串的较低级替代方案相比,它的性能可能会降低,尤其是在旧版本的 Python 上。

修复安全性

如果替换操作会删除附加到原始表达式的注释,则此规则的修复被标记为不安全。

参考