เมื่อคุณสร้างโปรแกรมหลามบางโปรแกรมที่ต้องการการป้องกันด้วยรหัสผ่านก่อนจึงจะสามารถทำงานได้ เราจะใช้ความช่วยเหลือจากโมดูล 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 !