如何使用 Pathlib 检查文件夹/文件权限

Num*_*uis 9 python python-3.x pathlib

是否有 Pathlib 等价物os.access()

如果没有 Pathlib,代码将如下所示:

import os
os.access('my_folder', os.R_OK)  # check if script has read access to folder
Run Code Online (Sandbox Code Playgroud)

但是,在我的代码中,我正在处理 Pathlib 路径,因此我需要这样做(这只是一个示例):

# Python 3.5+
from pathlib import Path
import os

# get path ~/home/github if on Linux
my_folder_pathlib = Path.home() / "github"
os.access(str(my_folder_pathlib), os.R_OK)
Run Code Online (Sandbox Code Playgroud)

演员str()阵容有点丑。我想知道我想要实现的目标是否有纯 Pathlib 解决方案

ps 我知道“更容易请求宽恕”的原则,但是这是一个更大框架的一部分,我需要尽快知道脚本是否具有对 NAS 存储文件夹的正确权限。

Num*_*uis 5

从 Python 3.6 开始,os.access()接受类似路径的对象,因此不再str()需要:https : //docs.python.org/3/library/os.html#os.access

虽然这仍然不是一个纯粹的 Pathlib 解决方案。