Назад | Перейти на главную страницу

Кросс-платформенный способ проверить права администратора в скрипте Python?

Есть ли какой-либо кроссплатформенный способ проверить, что мой скрипт Python выполняется с правами администратора? К сожалению, os.getuid () предназначена только для UNIX и недоступна в Windows :(.

import ctypes
import os

try:
    is_admin = os.getuid() == 0
except AttributeError:
    is_admin = ctypes.windll.shell32.IsUserAnAdmin()

print is_admin

"Админские права" бессмысленны. И Unix, и Windows имеют длинный список различных привилегий, которые может иметь или не иметь конкретный пользователь. Вам следует просто попытаться сделать то, что вы хотите, и использовать исключения, чтобы справиться с отсутствием привилегий. Вот для чего они нужны.