What is the best way to find out the user that a python process is running under?
I could do this:
name = os.popen('whoami').read()
But that has to start a whole new process.
os.environ["USER"]
works sometimes, but sometimes that environment variable isn't set.
This function checks the environment variables LOGNAME, USER, LNAME and USERNAME, in order, and returns the value of the first one which is set to a non-empty string. If none are set, the login name from the password database is returned on systems which support the pwd module, otherwise, an exception is raised.
Use os module to get the Home Directory path. expanduser('~') to get the home directory in Python. This also works if it is a part of a longer path like ~/Documents/my_folder/. If there is no ~ in the path, the function will return the path unchanged.
import getpass print(getpass.getuser())
See the documentation of the getpass module.
getpass.getuser()
Return the “login name” of the user. Availability: Unix, Windows.
This function checks the environment variables LOGNAME, USER, LNAME and USERNAME, in order, and returns the value of the first one which is set to a non-empty string. If none are set, the login name from the password database is returned on systems which support the pwd module, otherwise, an exception is raised.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With