เมื่อคุณสร้างโปรแกรมหลามบางโปรแกรมที่ต้องการการป้องกันด้วยรหัสผ่านก่อนจึงจะสามารถทำงานได้ เราจะใช้ความช่วยเหลือจากโมดูล getpass() และ getuser() พวกเขามีฟังก์ชันหลากหลายที่สามารถใช้ในการจัดการการป้องกันด้วยรหัสผ่านและการดึงรหัสผ่าน ฯลฯ ในบทความนี้ เราจะมาดูวิธีการพิมพ์รหัสผ่านทั้งแบบมีและไม่มีเสียงสะท้อนกลับบนหน้าจอ ด้านล่างนี้คือวิธีจัดการต่างๆ
พร้อมรับคำ
รหัสด้านล่างถูกบันทึกลงในไฟล์ (logon.py) ฟังก์ชัน getpass() พิมพ์ข้อความแจ้งแล้วอ่านข้อมูลจากผู้ใช้จนกว่าจะกดย้อนกลับ
ตัวอย่าง
import getpass
try:
pwd = getpass.getpass()
except Exception as err:
print('Error Occured : ', err)
else:
print('Password entered :', pwd) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
$ python logon.py Password: Password entered: abracadbra
พร้อมคำถามเพื่อความปลอดภัย
ต่อไป เราสามารถปรับปรุงโค้ดเพื่อถามผู้ใช้ด้วยคำถามเพื่อความปลอดภัย คำถามนี้ช่วยให้ผู้ใช้จำรหัสผ่านได้
ตัวอย่าง
import getpass
pwd = getpass .getpass(prompt = 'What is your favorite colour?')
if pwd == 'Crimson':
print('You are in!')
else:
print('Try Again') ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
$ python logon.py 'What is your favorite colour? You are in!
แสดงชื่อล็อกอิน
บางครั้งเราจำเป็นต้องรู้ชื่อล็อกอินที่เราใช้ในการเรียกใช้สคริปต์ ทำได้โดยใช้ฟังก์ชัน getuser()
ตัวอย่าง
import getpass
user = getpass.getuser()
while True:
pwd = getpass.getpass("User Name : ",user)
if pwd == 'Crimson':
print("You are in!")
else:
print("The password you entered is wrong.") ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
User Name: user1 You are in !