Python 3 - Método os.access ()
Descrição
O método access()usa o uid / gid real para testar o acesso ao caminho. A maioria das operações usará o uid / gid efetivo, portanto, esta rotina pode ser usada em um ambiente suid / sgid para testar se o usuário de chamada tem o acesso especificado para o caminho. Retorna True se o acesso é permitido, False se não.
Sintaxe
A seguir está a sintaxe para access() método -
os.access(path, mode)
Parâmetros
path - Este é o caminho que seria testado para existência ou qualquer acesso.
mode - Deve ser F_OK para testar a existência do caminho ou pode ser o OR inclusivo de um ou mais de R_OK, W_OK e X_OK para testar as permissões.
os.F_OK - Valor a ser passado como parâmetro de modo de acesso () para testar a existência de caminho.
os.R_OK - Valor a ser incluído no parâmetro de modo de acesso () para testar a legibilidade do caminho.
os.W_OK - Valor a ser incluído no parâmetro de modo de acesso () para testar a capacidade de escrita do caminho.
os.X_OK - Valor a ser incluído no parâmetro de modo de acesso () para determinar se o caminho pode ser executado.
Valor de retorno
Este método retorna True se o acesso for permitido, False se não for.
Exemplo
O exemplo a seguir mostra o uso do método access ().
#!/usr/bin/python3
import os, sys
# Assuming /tmp/foo.txt exists and has read/write permissions.
ret = os.access("/tmp/foo.txt", os.F_OK)
print ("F_OK - return value %s"% ret)
ret = os.access("/tmp/foo.txt", os.R_OK)
print ("R_OK - return value %s"% ret)
ret = os.access("/tmp/foo.txt", os.W_OK)
print ("W_OK - return value %s"% ret)
ret = os.access("/tmp/foo.txt", os.X_OK)
print ("X_OK - return value %s"% ret)
Resultado
Quando executamos o programa acima, ele produz o seguinte resultado -
F_OK - return value True
R_OK - return value True
W_OK - return value True
X_OK - return value False