os.access()

Posted 立业的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了os.access()相关的知识,希望对你有一定的参考价值。

概述
  os.access() 方法使用当前的uid/gid尝试访问路径
  大部分操作使用有效的 uid/gid, 因此运行环境可以在 suid/sgid 环境尝试

语法
  os.access(path, mode)

参数
  path
    要检测是否有访问权限的路径
    path结尾不能有"",具体如下:
    C:/tmp/foo.txt --> OK
    C:/tmp --> OK
    C:/tmp/ --> 报错

  mode
    mode为F_OK,测试存在的路径,或者它可以是包含R_OK, W_OK和X_OK或者R_OK, W_OK和X_OK其中之一或者更多。
    os.F_OK: 测试path是否存在
    os.R_OK: 测试path是否可读
    os.W_OK: 测试path是否可写
    os.X_OK: 测试path是否可执行


返回值
  True:路径存在,或者路径有相应的读写执行权限
  False: 与之相反

使用示例

# -*- coding: UTF-8 -*-
import os, sys

# 假定 C:/tmp/foo.txtt 文件存在,并有读写权限
ret = os.access(r"C:/tmp/foo.txt", os.F_OK)
print(ret) #输出:True

ret = os.access(r"C:/tmp/foo.txt", os.R_OK)
print(ret) #输出:True

ret = os.access(r"C:/tmp/foo.txt", os.W_OK)
print(ret) #输出:True

ret = os.access(r"C:/tmp/foo.txt", os.X_OK)
print(ret) #输出:False

以上是关于os.access()的主要内容,如果未能解决你的问题,请参考以下文章

Docker 卷挂载 NFS 共享的权限测试问题

Python教程:OS与sys模块用法教程

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

python操作文件与目录

python3模块: os

Python OS 文件/目录方法