答案:Python中通过os.chmod()函数修改文件权限,支持八进制数(如0o644)或stat模块常量设置读写执行权限,需注意仅所有者或root可更改,Windows上功能受限。
在 Python 中修改文件权限可以通过内置的 os.chmod() 函数实现,对应 Linux/Unix 系统中的 chmod 命令。这个功能主要用于控制文件或目录的读、写、执行权限。
path:文件或目录的路径(字符串)
mode:权限模式,可以用八进制数字或 stat 模块常量表示
最常见的方式是使用八进制数表示权限,例如:
示例代码:
import os
'script.sh', 0o755)
更清晰的方式是使用 stat 模块提供的常量组合权限:
import osst = os.stat('my_script.py')
os.chmod('my_script.py', st.st_mode | stat.S_IXUSR)
os.chmod('config.txt', stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IROTH)
只有文件所有者或超级用户(root)才能修改文件权限。
在 Windows 上部分权限模型不适用,chmod 行为可能受限或仅模拟 Unix 权限。
基本上就这些,合理设置文件权限有助于提升程序安全性。