我们再登录账号密码的时候,账号可以回显在屏幕上,但是对于比较隐私的项目例如密码最好是不要再屏幕上回显。就像我们再终端登录linux服务器的时候,输入信息的时候只显示用户名,而不显示登录密码。以下是Python代码对比:

1、明文回显账号密码

##代码
[root@room1pc01 data]# cat login1.py
#!/usr/bin/env python2.6

username = raw_input('username:')
password = raw_input('password:')


if username == 'bob':
    if password == '123456':
	print 'Login success.'
    else:
	print 'Your password error.'
else:
	print 'Your username error.'
##运行效果
[root@room1pc01 data]# python login1.py
username:bob
password:123456    ##密码明文回显在屏幕上,不安全
Login success.

2、使用getpass.getpass不回显输入的隐私信息

##代码
[root@room1pc01 data]# cat login2.py 
#!/usr/bin/env python2.6
import getpass


username = raw_input('username:')
password = getpass.getpass('password:')

if username == 'bob':
    if password == '123456':
	print 'Login success.'
    else:
	print 'Your password error.'
else:
	print 'Your username error.'

##运行效果
[root@room1pc01 data]# python login2.py
username:bob
password:    ##密码没有在屏幕上回显,私密信息得到保障
Login success.

 

Logo

更多推荐