概述
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