파이썬에서 현재 사용자의 사용자 이름을 얻는 이식 가능한 방법이 있습니까 (즉, 적어도 Linux와 Windows에서 작동하는 사용자 이름). 다음과 같이 작동합니다 os.getuid
.
>>> os.getuid()
42
>>> os.getusername()
'slartibartfast'
나는 구글을 둘러 보았고 결정적인 대답을 찾지 못하는 것에 놀랐다. PWD 모듈은 리눅스를,이 아래를 달성 말을 상대적으로 쉬운 방법을 제공하지만, 윈도우에 존재하지 않습니다. 검색 결과 중 일부는 Windows에서 사용자 이름을 얻는 것이 특정 상황 (예 : Windows 서비스로 실행)에서 복잡 할 수 있음을 제안했지만, 확인하지는 못했습니다.
import pwd, os; print pwd.getpwuid(os.getuid()).pw_gecos
또는import pwd, os; print pwd.getpwuid(os.getuid()).pw_name