如题:

如何有效使用stat函数获取有意义的文件权限(用户,组和其他)。

细节:

我正在查询文件权限,如下所示:

statInfo = os.statpermissions = stat.S_IMODE ( os.stat ( 'fooBar.txt' ).st_mode )

这将以十进制形式返回权限。因此,如果fooBar.txt具有八进制文件权限0700,则此处permissions设置为十进制值448。我想是设置9个变量对每个权限(ownerRead,ownerWright,ownerExecute,groupRead,...)如果我要做到这一点,我会用蛮力方法如下所示:

那究竟有没有一种更有效的方法来执行此操作而不必转换为八进制,因为此函数会被调用很多?

解决方案


可以使用按位AND运算符:

m = os.stat('fooBar.txt').st_modeotherExec = bool(m & 0001)otherWrite = bool(m & 0002)otherRead = bool(m & 0004)groupExec = bool(m & 0010)groupWrite = bool(m & 0020)groupRead = bool(m & 0040)...

最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。

stat函数_使用Python的stat函数有效地获得所有者,组和其他权限相关推荐

  1. python调用c语言函数_从Python调用C函数

    python调用c语言函数 We can call a C function from Python program using the ctypes module. 我们可以使用ctypes模块从P ...

  2. pythonpass函数_有的python内置函数怎么就一个pass?

    你看到的是pass,但可能现实并非如此. 火车上信号太差了,待我移动一下再续-- 先随便扯扯吧-- 既然提到Python内置函数的实现,就涉及到Python本身的实现方式了,也就是这个解释器是怎么实现 ...

  3. python四大高阶函数_详谈Python高阶函数与函数装饰器(推荐)

    一.上节回顾 Python2与Python3字符编码问题,不管你是初学者还是已经对Python的项目了如指掌了,都会犯一些编码上面的错误.我在这里简单归纳Python3和Python2各自的区别. 首 ...

  4. python强制结束函数_为什么Python没有 main 函数?终于有人给出了正确答案!

    毫无疑问,Python中没有所谓的 main 入口函数,但在网上经常有文章提到"Python中的main函数"和"建议编写main函数"等. 他们的目的可能是模 ...

  5. python调用matlab函数_从python调用MATLAB函数

    我知道这是一个老问题,已经得到答复. 但是我一直在寻找相同的东西(对于Mac),发现有很多选择与matlab交互的方法和成熟度不同. 这是我发现的: pymat 使用matlab引擎(libeng)进 ...

  6. python中累加函数_对Python实现累加函数的方法详解

    对Python实现累加函数的方法详解 发布时间:2020-10-26 00:02:44 来源:脚本之家 阅读:120 作者:岚漾忆雨 这个需求比较奇怪,要求实现Sum和MagaSum函数,实现以下功能 ...

  7. python计算器函数_用Python实现计算器函数的一个小练习,python,功能

    #知识点梳理 # 计算器的编程本文主要考虑思路:运算最小单元就是两个数的 = - * / n次方,以及一个数的阶乘..其余都是重复进行运算 # 利用循环实现多个数相乘或相除 # 括号的关系:是又一层的 ...

  8. python调用dll函数_从Python调用DLL函数

    我想从Python调用DLL中的函数.但我有个错误:"Attribute Error function not found" 这是我的代码:import os import cty ...

  9. python中编函数_在python中编写函数

    Aaron Hall.. 10 递归实现 这是一个相当优雅的递归实现,为了清晰起见,它使用了Python 3的功能: def strict_compose(*funcs): *funcs, penul ...

  10. python调用matlab函数_从 Python 调用 MATLAB 函数的三种方法

    0. 实验环境Ubuntu 16.04 Matlab R2015b 1. 借助于 mlab 库 安装方法非常简单,只需一行命令 sudo pip install mlab 即可. import num ...

最新文章

  1. 【网络流24题】解题报告:K、航空路线问题(最小费用最大流)
  2. J2EE的13个规范总结
  3. Java怎么样?学完后前途怎么样?
  4. 如何写好一份工程师简历
  5. .NET 6新特性试用 | PriorityQueue
  6. python中的计算符号
  7. 一篇文章带你快速理解微服务架构,由浅入深带你走进微服务架构的核心
  8. setInterval
  9. JS 字符串常用函数
  10. JAVA核心知识总结
  11. MingW环境下的windows编程
  12. android swf游戏下载工具,安卓swf游戏播放器下载
  13. 利用WebMatrix安装drupal7 基于IID+SqlExpress
  14. 如何使用 JavaScript 读取文件
  15. 程序员因接外包坐牢 456 天!两万字揭露心酸经历
  16. linux的网易云音乐界面不显示,linux mint19.1解决网易云音乐安装后打不开的问题...
  17. 向大众推荐的字处理器,TEXMACS
  18. Linux下烧写工具DNW和USB驱动安装
  19. idea 改写 插入_如何在Word 2013中控制插入/改写模式
  20. (五)JMeter 断言

热门文章

  1. 使用Python创建一个系统监控程序
  2. python基础-深浅拷贝
  3. Flask 中的数据库迁移
  4. 一个简单的动态web服务器
  5. 向量表示,投影,协方差矩阵,PCA
  6. 深入浅出VC++串口编程--第三方类
  7. 使用ObjectDataSource 显示数据
  8. Asp.net中基于Forms验证的角色验证授权
  9. 漫步最优化十——极值类型
  10. okhttp builder_从 OkHttp 到 Retrofit 到 OkHttps