Python os.access() 方法使用真实的 uid/gid 来测试对路径/文件夹的访问。Linux 为系统上的每个用户分配一个 UID(用户标识符),以标识他们可以访问哪些系统资源。GID (Group Identifier) 用于定义 Linux 中的组。
此例程可用于 suid/sgid 环境中,以测试调用用户是否具有对 path 的给定访问权限,因为大多数操作将使用有效的 uid/gid。如果允许访问,则返回 True,如果不允许,则返回 False。
语法
以下是 Python os.access() 方法的语法 -
参数
- path − 这是将测试是否存在或任何访问权限的路径。
- mode − 这应该是 F_OK 以测试 path 是否存在,也可以是 R_OK、W_OK 和 X_OK 中的一个或多个非独占 OR 来测试权限。
- os.F_OK − 作为 access() 的 mode 参数传递的值,以测试 path 是否存在。
- os.R_OK − 包含在 access() 的 mode 参数中的值,用于测试 path 的可读性。
- os.W_OK − 包含在 access() 的 mode 参数中的值,用于测试 path 的可写性。
- os.X_OK - 要包含在 access() 的 mode 参数中的值,以确定是否可以执行 path。
返回值
如果允许访问,则此方法返回 True,如果不允许,则返回 False。
示例 1
以下示例显示了 Python os.access() 方法的用法。在这里,我们将文件的不同路径及其模式作为参数传递给该方法。
当我们运行上述程序时,它会产生以下结果——
F_OK - return value True
R_OK - return value True
W_OK - return value True
X_OK - return value False
R_OK - return value True
W_OK - return value True
X_OK - return value False
示例 2
在下面给出的示例中,os.access() 方法用于检查用户是否有权写入文件。这里我们首先使用 open() 函数打开文件。然后我们使用 write() 函数写入其中。此后,我们关闭文件。
在执行上述代码时,我们得到以下输出 -
Total characters written including spaces are: 25
示例 3
在这里,os.access() 方法用于确定用户是否有权在验证访问后打开文件。
以下是上述代码的输出 -
Welcome to qikepu