Python3.6+PyQt5登陆界面实现密码限制以及日志记录功能
1、密码限制
需求:
- 密码长度在8-18位之间
- 密码由字母和数字组成
'''
部分代码如下
'''
def add_line_edit(self):
"""添加输入框"""
line_edit_font = QFont()
line_edit_font.setFamily('Consolas')
line_edit_font.setPixelSize(15)
# 创建三个输入框,父窗口为 self
self.username_edit = QLineEdit(self)
self.password_edit = QLineEdit(self)
self.confirm_edit = QLineEdit(self)
# 设置密码格式,输入密码的时候不可见密码
self.password_edit.setEchoMode(QLineEdit.Password)
self.confirm_edit.setEchoMode(QLineEdit.Password)
#只能输入数字和字母,密码长度8-18
regx = QRegExp("^[0-9A-Za-z]{8,18}$")
validator = QRegExpValidator(regx, self.password_edit)
self.password_edit.setValidator(validator)
'''
部分代码如下
'''
def sign_up(self):
"""实现注册功能"""
username = self.username_edit.text()
password = self.password_edit.text()
confirm = self.confirm_edit.text()
if not password or not confirm: # 如果有一个密码或者密码确认框为空
QMessageBox.warning(self, '警告', '密码为空', QMessageBox.Yes)
logger.warning('密码为空')
elif self.is_has(username): # 如果用户名已经存在
QMessageBox