पायथन की स्टैंडर्ड लाइब्रेरी में pwd मॉड्यूल यूनिक्स/लिनक्स ऑपरेटिंग सिस्टम में यूजर अकाउंट्स के पासवर्ड डेटाबेस तक पहुंच प्रदान करता है। इस पासवर्ड डेटाबेस में एंट्रीज टपल-जैसे ऑब्जेक्ट के रूप में स्टोर होती हैं। टपल की संरचना CPython API में passwd स्ट्रक्चर pwd.h फ़ाइल के अनुसार होती है:
| इंडेक्स | एट्रिब्यूट | अर्थ |
|---|---|---|
| 0 | pw_name | लॉगिन नाम |
| 1 | pw_passwd | वैकल्पिक एन्क्रिप्टेड पासवर्ड |
| 2 | pw_uid | न्यूमेरिकल यूजर ID |
| 3 | pw_gid | न्यूमेरिकल ग्रुप ID |
| 4 | pw_gecos | यूजर नाम या कमेंट फ़ील्ड |
| 5 | pw_dir | यूजर होम डायरेक्टरी |
| 6 | pw_shell | यूजर कमांड इंटरप्रेटर |
pwd मॉड्यूल निम्न फ़ंक्शन्स को परिभाषित करता है:
>>> import pwd >>> dir(pwd) ['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'getpwall', 'getpwnam', 'getpwuid', 'struct_passwd']
getpwnam() - यह फ़ंक्शन निर्दिष्ट यूजर नाम से मेल खाने वाले पासवर्ड डेटाबेस में रिकॉर्ड लौटाता है।
>>> pwd.getpwnam('root')
pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash')
getpwuid() - यह फ़ंक्शन दिए गए UID से मेल खाने वाले पासवर्ड डेटाबेस में रिकॉर्ड लौटाता है।
>>> pwd.getpwuid(0) pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash')
getpwall() - यह फ़ंक्शन टपल्स की एक सूची लौटाता है। प्रत्येक टपल में प्रत्येक यूजर की पासवर्ड स्ट्रक्चर जानकारी होती है। स्ट्रक्चर में uid और gid आइटम इंटीजर्स होते हैं। यदि पास किए गए पैरामीटर से मेल खाने वाली एंट्री नहीं मिलती है, तो KeyError अपवाद उठाया जाता है।
>>> pwd.getpwnam('hello')
Traceback (most recent call last):
File "", line 1, in
KeyError: "getpwnam(): name not found: hello"