Chinaunix首页 | 论坛 | 博客
  • 博客访问: 812738
  • 博文数量: 211
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1480
  • 用 户 组: 普通用户
  • 注册时间: 2018-03-07 14:59
文章分类
文章存档

2019年(161)

2018年(50)

我的朋友

分类: 系统运维

2019-03-25 20:00:04

检验权限模式

os.access(path,mode)

参数:

  • path --要用来检测是否有访问权限的路径。
  • mode --常用4种模式如下:
    • os.F_OK:测试path是否存在
    • os.R_OK:测试path是否可读
    • os.W_OK:测试path是否可写
    • os.X_OK:测试path是否可执行

返回值: 如果允许访问则返回True,否则返回False。

例子:

  • 先看一个菜鸟教程上的例子
import os, sys

# 假定 /tmp/foo.txt 文件存在,并有读写权限

ret = os.access("/tmp/foo.txt", os.F_OK)
print ("F_OK - 返回值 %s"% ret)

ret = os.access("/tmp/foo.txt", os.R_OK)
print ("R_OK - 返回值 %s"% ret)

ret = os.access("/tmp/foo.txt", os.W_OK)
print ("W_OK - 返回值 %s"% ret)

ret = os.access("/tmp/foo.txt", os.X_OK)
print ("X_OK - 返回值 %s"% ret)
  • 再加上循环,这里使用了eval()函数用以转换提取的数组元素,字符串,关于eval()后面再学习
#-*-coding:utf-8-*-
import os,sys

#假定f1.txt文件存在,并具有读写权限

file_mode =['os.F_OK','os.R_OK','os.W_OK','os.X_OK']

#通过序列索引迭代
for index in range(len(file_mode)):
    results =os.access("f1.txt",eval(file_mode[index]))
    print(str(file_mode[index]) + " - 返回值: %s"% results)
阅读(2246) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~