Есть ли переносимый способ получить имя пользователя текущего пользователя в Python (то есть тот, который работает как под Linux, так и Windows, по крайней мере). Она будет работать как os.getuid
:Есть ли переносимый способ получить текущее имя пользователя в Python?
>>> os.getuid()
42
>>> os.getusername()
'slartibartfast'
Я гугле вокруг и был удивлен не найти окончательный ответ (хотя, возможно, я просто плохо прибегая к помощи). Модуль pwd обеспечивает относительно простой способ достижения этого, скажем, Linux, но его нет в Windows. Некоторые из результатов поиска предполагали, что получение имени пользователя под Windows может быть затруднено в определенных обстоятельствах (например, выполняется как служба Windows), хотя я еще не подтвердил это.
Это не работает на моей Linux-упаковке! – Riccardo
'import pwd, os; print pwd.getpwuid (os.getuid()). pw_gecos' или 'import pwd, os; print pwd.getpwuid (os.getuid()). pw_name' – chown
getusername() недействителен в модуле os Python: https://docs.python.org/2.7/library/os.html –