Có cách nào di động để lấy tên người dùng hiện tại bằng Python (ít nhất là một cách hoạt động trong cả Linux và Windows). Nó sẽ hoạt động như os.getuid
sau:
>>> os.getuid()
42
>>> os.getusername()
'slartibartfast'
Tôi googled xung quanh và ngạc nhiên khi không tìm thấy một câu trả lời dứt khoát (mặc dù có lẽ tôi chỉ đang googling kém). Các pwd mô-đun cung cấp một cách tương đối dễ dàng để đạt được dưới này, nói, Linux, nhưng nó không phải là hiện nay trên Windows. Một số kết quả tìm kiếm cho thấy việc lấy tên người dùng trong Windows có thể phức tạp trong một số trường hợp nhất định (ví dụ: chạy như một dịch vụ Windows), mặc dù tôi chưa xác minh điều đó.
import pwd, os; print pwd.getpwuid(os.getuid()).pw_gecos
hoặcimport pwd, os; print pwd.getpwuid(os.getuid()).pw_name